/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Problem med Include, asp
Fra : Matthiaz


Dato : 28-02-04 03:36

Jeg har en Index.asp side, staff.asp og en home.asp side.

meningen er at når jeg skriver:
"minserver.dk/index.asp?page=home.asp" at den så viser index.asp
siden med home.asp inden i sig, ved hjælp af include. Når man så
skriver "minserver.dk/index.asp?page=staff.asp" skal samme
index.asp side komme frem men nu med staff.asp inden i sig.

Hvordan kan det laves, helst med include? Har brugt en masse
timer og læst alle vejledninger inde på html.dk så sidder helt
fast.

På forhånd tak for hjælp og forsat god aften/dag.

, Matthiaz.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
finn elmgaard (28-02-2004)
Kommentar
Fra : finn elmgaard


Dato : 28-02-04 09:46

> meningen er at når jeg skriver:
> "minserver.dk/index.asp?page=home.asp" at den så viser index.asp
> siden med home.asp inden i sig, ved hjælp af include. Når man så
> skriver "minserver.dk/index.asp?page=staff.asp" skal samme
> index.asp side komme frem men nu med staff.asp inden i sig.
>
> Hvordan kan det laves, helst med include? Har brugt en masse
> timer og læst alle vejledninger inde på html.dk så sidder helt
> fast.
>

Kan du ikke se bort fra filnavnet i din querystring, og blot anvende en
simpel variabel. I din index.asp kan du så anvende en if-sætning, noget i
stil med:

<%
If request.Querystring("page")="home" then
%>
<!--#include file="home.asp"-->
<%
else
%>
<!--#include file="staff.asp"-->
<%
end if
%>

Den vil kunne udvides til et vilkårligt antal include-sider.

mvh
Finn



Jørn Andersen (28-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 28-02-04 10:12

On Sat, 28 Feb 2004 09:45:47 +0100, "finn elmgaard"
<agertoften@XXXstofanet.dk> wrote:

>Kan du ikke se bort fra filnavnet i din querystring, og blot anvende en
>simpel variabel.

Han kunne for så vidt sagtens holde fast i "home.asp", "staff.asp"
osv.

>I din index.asp kan du så anvende en if-sætning, noget i
>stil med:
>
><%
>If request.Querystring("page")="home" then
>%>
> <!--#include file="home.asp"-->
><%
>else
>%>
> <!--#include file="staff.asp"-->
><%
>end if
>%>
>
>Den vil kunne udvides til et vilkårligt antal include-sider.

Metoden er OK i den forstand, at den virker - der er dog et par
"bagsider", man skal tage med i betragtning:
- skal der tilføjes en ny side, skal den tilføjes i listen. Det er
altså ikke specielt "dynamisk"
Mere vigtigt:
- man inkluderer *alle* filer ved denne metode, ikke kun dem, hvor
If'en er sand, da includes (heldigvis) udføres før ASP.

Som sagt: Metoden kan være OK i bestemte situationer, men har nogle
ulemper - specielt, hvis include-filerne er store eller mange, eller
der tit skal ændres i dem.

Good luck!

--
Jørn Andersen,
Brønshøj

Martin Jensen (28-02-2004)
Kommentar
Fra : Martin Jensen


Dato : 28-02-04 11:32

finn elmgaard wrote in dk.edb.internet.webdesign.serverside.asp:
> > meningen er at når jeg skriver:
> > "minserver.dk/index.asp?page=home.asp" at den så viser index.asp
> > siden med home.asp inden i sig, ved hjælp af include. Når man så
> > skriver "minserver.dk/index.asp?page=staff.asp" skal samme
> > index.asp side komme frem men nu med staff.asp inden i sig.
> >
> > Hvordan kan det laves, helst med include? Har brugt en masse
> > timer og læst alle vejledninger inde på html.dk så sidder helt
> > fast.
> >
>

if request.Querystring("page") <>"" then
<!--#include file="request.Querystring("page").asp"-->
endif

Jeg vil mene at du kan bruge noget lignende det her.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jørn Andersen (28-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 28-02-04 13:57

On Sat, 28 Feb 2004 10:31:59 +0000 (UTC), Martin Jensen
<mrmanden@ofir.dk> wrote:

>if request.Querystring("page") <>"" then
><!--#include file="request.Querystring("page").asp"-->
>endif
>
>Jeg vil mene at du kan bruge noget lignende det her.

Nej, den går ikke.
Include bliver afviklet før ASP, så du vil få en fejl a la:

The include file 'request.Querystring(' was not found.

Prøv selv

--
Jørn Andersen,
Brønshøj

Jørn Andersen (28-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 28-02-04 09:57

On Sat, 28 Feb 2004 02:36:02 +0000 (UTC), Matthiaz
<matthiaz_@hotmail.com> wrote:

>Jeg har en Index.asp side, staff.asp og en home.asp side.
>
>meningen er at når jeg skriver:
>"minserver.dk/index.asp?page=home.asp" at den så viser index.asp
>siden med home.asp inden i sig, ved hjælp af include. Når man så
>skriver "minserver.dk/index.asp?page=staff.asp" skal samme
>index.asp side komme frem men nu med staff.asp inden i sig.
>
>Hvordan kan det laves, helst med include? Har brugt en masse
>timer og læst alle vejledninger inde på html.dk så sidder helt
>fast.

For lige at forstå includes, så skal du vide, at includes bliver lavet
*før* din ASP bliver afviklet. Se:
<url: http://www.asp-faq.dk/article/?id=50>

Så i virkeligheden er den måde du forsøger sjældent en særlig smart
måde at gøre det på. Oftest er det smartere at "vende det om", dvs. at
inkludere "de fælles ting" (HTML-top, menuer, HTML-bund etc.) i de
andre sider. Det sparer dig også for "?page=home.asp" - hvor du i
stedet kan bruge .../home.asp direkte.

Hvis jeg har misforstået, hvad du vil, så skriv igen.

Hvis du insisterer på at gøre det som du er startet på, så er der et
par metoder i linket ovenfor. Og hvis du ikke skal inkludere kode, men
kun tekst/HTML, kan du evt. også bruge FSO (FileSystemObject). Så
slipper du for de mange include-sætninger, men skal til gengæld bruge
ressourcer på FSO-objektet.

Good luck!

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste