Asp - includes dynamiques

Soyez le premier à donner votre avis sur cette source.

Vue 10 477 fois - Téléchargée 469 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_Bassman
Messages postés
43
Date d'inscription
dimanche 13 avril 2003
Statut
Membre
Dernière intervention
24 novembre 2005
-
Bonjour,

10 ans après code toujours d'actualité :)

Merci bien pour ces fonctions qui me sont très utile pour un projet ASP (et oui en 2010 des clients demande encore de l'ASP classique ...) ça craint ...
cs_rcolas
Messages postés
24
Date d'inscription
dimanche 20 août 2000
Statut
Membre
Dernière intervention
17 mai 2004
-
un an parès :
bien vu! C'etait effectivement le but ! :-)
Ceci dit avec l'arrivée d'IIS 5 et de .NET, mon code devient un peu ringuard! :-))
Supper, cela permet par exemple de lire une page "modele" contenant des balises (ici mot-clé) , , etc... et de remplacer ces balises par des champs lus dans une BD afin de gerer dynamiquement les différentes traductions d'un site.

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.