Asp - includes dynamiques

Soyez le premier à donner votre avis sur cette source.

Vue 11 866 fois - Téléchargée 395 fois

Description

Permet d'inclure n'importe quel fichier de façon dynmique dans une page ASP. Ce qui ne peut pas être fait avec #include. Merci à Pierre de sites-internet.net de m'avoir mis sur la voie! ;-)

Source / Exemple :


<%
' Checks weither a file exists on the server
' receive relative path to the file + file name
' ex : existFic("images/myImage.gif")
' returns false if file does not exists
' true if file exists or is URL
function existFic(nom)
dim existFic_tmp
' if is URL then say it exists
if lcase(left(nom,7))="http://" then
    existFic_tmp = true
else
    if nom="" OR isNull(nom) then
        existFic_tmp = false
    else
        dim oFile, f
        set oFile = server.createObject("Scripting.FileSystemObject")
        If (oFile.FileExists(server.mapPath(nom))) then
            existFic_tmp = true
        else
            existFic_tmp = false
        end i
    end if
end if
existFic = existFic_tmp
end function

' include dynamique
' can include any text based page
' taking nothing but inside <BODY></BODY> if HTML page
' I take the option that you can't have
' "<HTML>,<HEAD>,</HEAD>,</HTML>" tags without the <body> tag
function incFile(filPath)
dim fichier
fichier = "page.asp"
if existFic(fichier) then
    dim fso,fic,fn, contenu, debut, fin
    fic=server.mappath(fichier)
    set fso=server.createObject("scripting.filesystemObject")
    set fn = fso.opentextfile(fic)
    contenu = fn.readAll
    'takes all after "<BODY>"
    debut = inStr(UCase(contenu),"<BODY>")
    if debut>0 then
        contenu = mid(contenu , debut + 6 , len(contenu) - debut - 1 )
    end if
    'takes all before "</BODY>"
    fin = inStr(UCase(contenu),"</BODY>")
    if fin>0 then
        contenu = mid(contenu , 1 , fin - 1 )
    end if
    fn.close
    set fso=nothing
    incFile = contenu
end if
end function
%>

Conclusion :


ca vous plait?
n'hesitez pas à le dire! ;-)
r.colas@bigfoot.com

Codes Sources

A voir également

Ajouter un commentaire Commentaires
cs_francky60 Messages postés 2 Date d'inscription vendredi 24 octobre 2003 Statut Membre Dernière intervention 11 février 2010
30 oct. 2003 à 09:11
J'ai pas tout compris : besoin d'explications.
Si le fichier que je veux inclure s'appelle par exemple :"novembre.asp"
et que je veux placer cet include au beau milieu de ma page (donc entre et , comment est ce que j'appelle ta fonction.
merci d'avance
cs_cbastien Messages postés 44 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 18 février 2008
30 sept. 2003 à 11:51
oui mais comment marche ce code ?
svp, merci.
SBSzazou Messages postés 1 Date d'inscription lundi 7 juillet 2003 Statut Membre Dernière intervention 4 septembre 2003
4 sept. 2003 à 14:18
C pas Mal, mais cela reste limité : cette fonction ne peut être pratique que lorsque ton fichier ne contient que du html, donc tu ne peux pas utiliser des variables asp dedans (<%=variable%>), ça reste la seule différence.
guidal Messages postés 85 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 9 octobre 2003
31 juil. 2003 à 07:53
Ca reste une ouverture de fichier et un response.write du contenu ... Rien de bien compliqué ...

Pour les vraies inclusions dynamiques (c'est à dire inclure une page qui contient du code ASP) ASP en est incapable (du fait du mode de fonctionnement du moteur ASP) ...

C'est une des nombreuses raisons pour lesquelles PHP sera toujours mieux ...
cs_rcolas Messages postés 24 Date d'inscription dimanche 20 août 2000 Statut Membre Dernière intervention 17 mai 2004
23 juin 2003 à 07:10
merci :-)
Afficher les 12 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.