Asp - includes dynamiques

Soyez le premier à donner votre avis sur cette source.

Vue 11 593 fois - Téléchargée 368 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

Messages postés
2
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
11 février 2010

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
Messages postés
44
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
18 février 2008

oui mais comment marche ce code ?
svp, merci.
Messages postés
1
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
4 septembre 2003

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.
Messages postés
85
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
9 octobre 2003

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 ...
Messages postés
24
Date d'inscription
dimanche 20 août 2000
Statut
Membre
Dernière intervention
17 mai 2004

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.