webForumDet fria alternativet

Hur hämtar man ett filnamn från en databas och använder med <!-- #include File= ?

ASP

4 svar · 308 visningar · startad av wilsson

Medlem sedan juni 20032 inlägg
Frågan#1

Hej jag har problem vill kunna hämta ett filnamn från en databas och sedan använda det med.
<!-- #include File="" --> . Men får inte detta och funka kanske finns något annat bra ASP kommando man kan använda.

Tack på förhand /Klas

Medlem sedan dec. 19996 522 inlägg
#2

Du kan inte inkludera ssi på det sättet då de läses innan själva asp sidan blir exekverad. Kika på server.execute, som inte riktigt är samma sak, men du kanske kan använda det på något annat sätt. Annars kan du köra if, case om vilken include du ska visa

Vad är det för typ av kod i include filerna ?

Medlem sedan feb. 200112 078 inlägg
#3

Välkommen till wF, wilsson! :)

Som erka-perka sade ovan, så kan du använda server.execute. Däremot får man tänka sig för lite vid användande av denna metod, då deklarerade variablar och objekt inte följer med tillbaks till den ursprungliga sidan, efter att include-sidan har körts.

Men nåt sånt här borde väl lösa ditt problem:

'din databasöppning och populering av recordset
set rs = dbconn.execute("SELECT * FROM your_table WHERE id = 1")

strPage = rs("page") & ".asp"

server.execute "inc/" & strPage
Medlem sedan feb. 2003130 inlägg
#4

Välkomen wilsson. Filnamnet som ska ligga i ssi:n antar jag ligger i en databas. Då kan du tex innan include koden skapa en databaskoppling och sedan sätta typ filnamn = rs("filnamn")
EX:

<%

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" Server.MapPath("db.mdb")
Set rs = Server.CreateObject("ADODB.Recordset")

SQLSATS = "SELECT * FROM Tabell WHERE ID = " & Request.QueryString("id")
RecSet.Open SQLSATS, Connect, 3, 3

Do Until rs.EOF
filnamn = rs("filnamn")
rs.MoveNext
Loop
%>

<!-- #include file="<%=filnamn%>" -->

Nu vet jag inte om detta kommer att fungera. Den känns inte helt korrekt men ni kan göra ett försök. Jag har för mig att man inte kan skriva i include raden asp kod men prova!

Medlem sedan juli 20011 084 inlägg
#5

Nej det kommer inte fungera SSI körs innan ASP koden.

267 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)