io uso la classe di inclusione dinamica scritta da baol (che ho modificato per la funzione di cui sopra)
class.include.asp
codice:
Class Class_dinamicInclude
public Fso
public WebPath
private sub Class_initialize()
WebPath = Request.ServerVariables("APPL_PHYSICAL_PATH")
Set Fso = CreateObject("Scripting.FileSystemObject")
end sub
private function Readfile(rFilename)
Dim f
on error resume next
Set f = fso.OpenTextFile(WebPath & rFilename , 1,False, 0)
if err.number<>0 then
Response.Write("<p style=""font-family:verdana;font-size:11"">Include File not Found [" & lCase(WebPath & rFilename) &"]
")
Response.Write("<p style=""font-family:verdana;font-size:11"">Error "& Err.number &" [" & Err.Description &"]
")
Response.end
end if
on error goto 0
Readfile = f.ReadAll
f.close
Set f=nothing
End Function
Public Function Include(Filename)
dim tMp,Fullpath
tMp = Replace(request.ServerVariables("URL"),"/","\")
Fullpath = Mid(tMp,2,InStrRev(tMp,"\")-1) & Filename
include = Readfile(Fullpath)
include = replace(include,"<" & "%","")
include = replace(include,"%" & ">","")
end function
private sub Class_Terminate()
set fso = nothing
end sub
end class
Sub IncludeFile(argFilename)
dim oIncludeFile
Set oIncludeFile = new Class_dinamicInclude
IncludeFile = oIncludeFile.Include(argFilename)
Set oIncludeFile = nothing
End Sub
il suo utilizzo è semplicissimo
per es:
codice:
<%
call IncludeFile(request.querystring("lang") & ".asp")
%>
in questo caso includerebbe dinamicamente il file ITA.ASP
ricorda sempre che questo tipo di inclusioni possono utilizzare TUTTE le variabili della pagina in cui vengono incluse. non sono ambienti isolati.
peraltro ricorda di fare un controllo sui valori di entrata
ma l'utilizzo pratico è questo che ti ho esposto