webForumDet fria alternativet

Server.Execute...

4 svar · 296 visningar · startad av andyoumaydie

andyoumaydieMedlem sedan dec. 2006608 inlägg
#1

Hallå,
jag håller på att bygger en adminsida och har (som vanligt) stött på ett problem.
Den här gången är det server.execute som inte fungerar som jag vill :)

Jag har en sida som jag originellt nog valt att kalla default.asp där jag bestämmer lite konstanter och annat som behövs för att det hela ska bli korrekt

har bl a en array som heter arrSidor

utdrag ur default.asp

dim arrSidor
arrSidor = array("Nyheter", "Låtar", "Prov2")

...

' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
'Nyheter
' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
elseif request.querystring("visa")= arrSidor(0) and session("Admin") = true then
	Server.Execute("asp/nyheter.asp")

och problemet är att jag får en:

Type mismatch: 'arrSidor'

/admin/asp/nyheter.asp, line 19

Rad 19 i nyheter.asp

response.write "<td><form method='post' action='" & Filnamn & "?visa=" & arrSidor(0) & "&page=nyhetny' name='nyknapp'>"

Vad har jag missuppfattat eller gjort fel?
Förslag till lösningar mottages med glädje. ;)

emissionMedlem sedan dec. 19996 721 inlägg
#2

Variabler i default.asp kommer inte att finnas tillgängliga i nyheter.asp ( i detta fall saknas arrSidor). Sidan som exekveras av Server.Execute har en helt egen arbetsrymd.

andyoumaydieMedlem sedan dec. 2006608 inlägg
#3

O detta gäller alla typer variabler?
(som constanter, session etc...)

red. Det spelar ingen roll, jag inkluderar bara en egen sida med alla variablar jag behöver.

Tack för hjälpen /Patrik

colioneMedlem sedan juni 20014 421 inlägg
#4

har du provat att använda ExecuteGlobal() istället?

http://blogs.msdn.com/ericlippert/archive/2003/09/20/53058.aspx

Annars fungerar det väl bra att länka in asp-filen på det vanliga sättet?

För att använda ExecuteGlobal måste du läsa in koden i en variabel först:

set oFile = fso.OpenTextFile(sFileName,1)
sText = oFile.ReadAll
oFile.close
ExecuteGlobal sText

andyoumaydieMedlem sedan dec. 2006608 inlägg
#5

Annars fungerar det väl bra att länka in asp-filen på det vanliga sättet?

Det gör det, men då tvingas väl servern läsa in alla sidorna ändå, o det är ett par kb. ;)

Ska kolla på global execute, men till att börja med länkar jag in variablerna i varje sida på det "vanliga sättet".

122 ms totalt · 3 externa anrop · v20260731065814-full.b943c234
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)