Avatar billede Slettet bruger
24. oktober 2003 - 19:52 Der er 10 kommentarer og
2 løsninger

include anden asp-side

Hej - jeg har en side jeg kalder med en querystring - her i eksemplet = "1"

I samme mappe som siden ligger en rækker sider hvis navn svarer til query-strengen - altså eks. "1.asp"

Hvorfor får jeg så fejl på følgende:
<!--#include file="<%=query%>.asp"-->

Fejl: The include file '<%=query%>.asp' was not found.
Avatar billede squashguy Nybegynder
24. oktober 2003 - 19:56 #1
du kan ikke bruge variabler i forbindelse med include

her skal du bruge server.execute("fil")
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 19:57 #2
Det kan du ikke.
#include file="filen.asp", hvor filen.asp er fast.
du kan dog lave en select case.. f.eks.:
<%
Select case request.querystring("id")
case "1"
  <!--#include file="1.asp"-->
case "2"
  <!--#include file="2.asp"-->
case else
  <!--#include file="forside.asp"-->
end select
%>

scriptet kaldes med: <a href="side.asp?id=2">inkluder side 2</a>
(her er "2" valgt.

hvis id hverken er 1 eller 2, vises forsiden.
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 19:58 #3
..husk på at server.execute ikke tillader variabler i filnavnet.. f.eks.:
server.execute "enellerandenside.asp?navn=hugo" (virker ikke)
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 19:59 #4
..hvis du har asp på en apache (dvs Chili!ASP) kan du ikke bruge server.execute eller server.transfer
Avatar billede squashguy Nybegynder
24. oktober 2003 - 20:01 #5
var="enellerandenfil.asp"
server.execute(var)

virker fint
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 20:03 #6
..da jeg sagde variabler, mente jeg querystring..
Avatar billede squashguy Nybegynder
24. oktober 2003 - 20:06 #7
ulempe/fordel med server.execute() er at den inkluderede side får sit eget namespace. Dvs variabler og funktioner på side 1 kan ikke ses af side 2..
Avatar billede Slettet bruger
24. oktober 2003 - 20:28 #8
Kan man ikke gøre det på en eller anden måde med FSO? Har dog ikke fået det til at virke:

FUNCTION importFile (filnavn)
    Dim fso, f1, filnavn
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f1 = fso.GetFile(filnavn)
  importFile = f1
END FUNCTION
Avatar billede toppus Nybegynder
24. oktober 2003 - 20:30 #9
bare lige.. hvis man har nogle frames i en asp síde hvor der er 4 andre asp sider, kan man så dele en variabel mellem siderne??
f.eks tid = XXX lavet i frames 1 og så hente den i frames 2???
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 20:35 #10
Det med frames gør du via javascript.
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 20:35 #11
lektion i at læse fra fil: http://html.dk/tutorials/asp/lektion15.asp
Avatar billede thesurfer Nybegynder
24. oktober 2003 - 21:50 #12
det skulle vel have været:
<%
Select case request.querystring("id")
case "1"
%>
  <!--#include file="1.asp"-->
<%
case "2"
%>
  <!--#include file="2.asp"-->
<%
case else
%>
  <!--#include file="forside.asp"-->
<%
end select
%>

(lag ikke mærke til det..)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester