include med filnamnsvariabel
Kan man inkludera en fil som man inte vet namnet på (namnet ligger i en variabel) med include file?
Eller finns det något annat sätt att uppnå samma mål?
Har prövat...
Dim inc
inc = "<!-- #include file='" & Filename & "' -->"
Response.Write inc
...men det fungerar ej!
den skriver i koden <!-- include file='minfil.asp' --> men filen inkluderas inte!
Är det någon som vet vad jag kan göra?
Svara
Sv: include med filnamnsvariabel
Om du kör IIS5 kan du använda server.execute, alltså:
server.execute filename
/Johan
Svara
Sv: include med filnamnsvariabel
Hej!
SSI-direktiv körs alltid FÖRE vanlig ASP-kod.
Innehåller den fil du vill inkludera vanlig HTML eller programkod som du vill ska köras? Om det är vanlig HTML så skulle du ju kunna skriva något i stil med
<code>
' strFile är filvariabeln du vill inkludera
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objStream = objFSO.OpenTextFile(Server.MapPath(strFile), 1, False, 0)
strData = objStream.ReadAll
objStream.Close
Set objStream = Nothing
Response.Write strData
</code>
...kanske?
Lycka till och lev väl,
Tom S.
Svara
Sv: include med filnamnsvariabel
Finns det nån fördel med att använda en variabel? Har inte hållt på så mycket med ASP. Men jag skulle ha skickat data direkt till Response.Write.
Om man har ADO 2.5 så kan man väl också använda ADODB.Stream objektet. Känner någon till för och nackdelar?
Response objektet stödjer ju också IStream gränssnittet. Kan man använda det på något smart sätt istället för att alokera minne med sträng variabler?
'Tror inte detta spelar så mycket roll:
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objStream = objFSO.OpenTextFile(Server.MapPath(strFile), 1, False, 0)
Response.Write objStream.ReadAll
objStream.Close
Set objStream = Nothing
Set objFSO = Nothing
Svara
Sv: include med filnamnsvariabel
Hallåj!
Ahh... Väldigt klumpigt skrivet av mig.
Lev väl,
Tom S.
Svara
Sv: include med filnamnsvariabel
Jag har med kikat på detta men hittade ingen lösning.
Jag vill hämta filens namn med request(Fil) och sedan skriva ut den i "include" men det går inte att sätta in asp i INC....
'Går inte
<!-- #include file='<%=Fil%>' -->
Hur kan jag göra detta någon..?
Tack på förhand.
//Stefan
Svara
Sv: include med filnamnsvariabel
Include utförs på servern innan ASP koden behandlas. Det är därför du kan includera ASP kod i dokumentet som du Includar. Det går altså inte att använda ASP kod för att ange vilken fil include hänvisar till.
Om du vill retunera en annan fil från din ASP sida så kan du använda FileSystemObjects.
Exempel:
<%
Dim strFile
strFile = request(Fil)
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objStream = objFSO.OpenTextFile(Server.MapPath(strFile), 1, False, 0)
Response.Write objStream.ReadAll
objStream.Close
Set objStream = Nothing
Set objFSO = Nothing
%>
Svara