Hej!Läsa in ASP-fil dynamiskt och skriva innehållet på valfritt ställe...
Jag har ett litet problem som jag undrar om någon av er här har någon lösning till. Det är så här att jag läser in en sträng data från en databas. Denna sträng kan innehålla lite allt möjligt. Strängen skrivs ut på ett bestämt ställe i en HTML-fil. Saken är nu den att jag vill ha möjlighet att exekvera ASP-sidor genom att skriva in filen i denna sträng. Problemet blir att sidan exekveras när datan läsas från databasen istället för på den plats där resten av texten skrivs ut med min nuvarande kod.
I strängen från databasen kan det se ut så här:
Välkommen till min hemisda<br>Nedan skall ni få se en asp-fil<br>[load]minfil[offset][/load]
När jag sedan läser ut det jag behöver från databasen blir det så här:
'Öppna databas med mera och lägg i innh.
text = fetchFuc(innh, "[ladda]", "[offset]", "[/ladda]")
response.write(innh)
Funktionen som ersätter [ladda]minfil...
med korrekt ASP-fil ser ut så här...
function fetchFuc(fulltext, replaceBeginText, replaceMidText, replaceEndText)
Dim bla
Dim place
Dim fullcl
Dim fullcr
Dim fullc
fullc = lcase(fulltext)
Dim trues
Dim replacementLink
Dim replacementText
Dim textBegin
textBegin = replaceBeginText
Dim textMid
textMid = replaceMidText
Dim textEnd
textEnd = replaceEndText
place = InStr(1, fullc, textBegin)
If place > 1 Then
placeB = InStr(place, fullc, textMid)
If placeB > 1 Then
placeC = InStr(placeB, fullc, textEnd)
End If
End If
trues = 1
If ((place = 0) Or (placeB = 0) Or (placeC = 0)) Then trues = 0
Do While trues > 0
fullcl = Left(fulltext, place - 1)
fullcr = Right(fulltext, Len(fulltext) - placeC - Len(textEnd) + 1)
replacementLink = Len(fulltext)
replacementLink = Mid(fullc, place + Len(textBegin), placeB - place - Len(textBegin))
replacementText = Mid(fulltext, placeB + Len(textMid), placeC - placeB - Len(textMid))
vad = vad & "¤%¤" & replacementLink & ","
fulltext = fullcl & "¤%¤" & replacementLink & fullcr
fullc = LCase(fulltext)
place = InStr(1, fullc, textBegin)
If place > 1 Then
placeB = InStr(place, fullc, textMid)
If placeB > 1 Then
placeC = InStr(placeB, fullc, textEnd)
End If
End If
If ((place = 0) Or (placeB = 0) Or (placeC = 0)) Then trues = 0
Loop
att_grejja = split(vad,",")
for h = 0 to ubound(att_grejja)-1
lanken = "includeFunction/pgm_" & Right(att_grejja(h), Len(att_grejja(h)) - 3) & ".asp"
call replace(fulltext,att_grejja(h),server.execute(lanken))
next
fetchFuc = fulltext
End function