Avatar billede carlsson Nybegynder
27. februar 2002 - 12:53 Der er 6 kommentarer og
1 løsning

URL variabler i ASP

På denne har variabler direkte i URL'en sådan her
http://www.eksperten.dk/kat/2/
Altså variablen kat = 2
Den normale måde at gøre dette på er:
http://www.eksperten.dk?kat=2

Hvordan gør man det, når man programere i ASP.


Avatar billede joeblack Nybegynder
27. februar 2002 - 12:57 #1
Som du selv skriver....

http://www.eksperten.dk/kat/2/  - er ikke variabler, men en sti.

http://www.eksperten.dk?kat=2 - hvor 2 er tildelt variablen kat
Avatar billede carlsson Nybegynder
27. februar 2002 - 13:01 #2
Ok men kan man gøre det til en variabel
Avatar billede joeblack Nybegynder
27. februar 2002 - 14:47 #3
Jeg er ikke helt sikker på hvad du mener. Forklar dig lidt nærmere...
Avatar billede carlsson Nybegynder
27. februar 2002 - 17:20 #4
Når man laver en hjemmeside er det mest behageligt at have det hele i et text dokument. Så kan man bestemme sidens indhold med URL variabler.
side.dk/index.asp?id=1
Men er det ikke muligt at få det til at se lidt flottere ud.

Fx. ved, at ligegyldigt hvilket bibliotek eller side der bliver åbnet, så er det index.asp i roden som bliver brugt.
Men uden at URL'en ændre sig.
Og så få scriptet til, udfra URL'er, at bestemme variablerne.


For det kan være lidt uoverskueligt at have over 5.000 undermapper, som du siger denne side har.
Avatar billede tniels Nybegynder
27. februar 2002 - 18:24 #5
Hvis du har adgang til at ændre i IIS'ens opsætning, kan du eventuelt opsætte det som en 404-fejlside:

Under "Internet Services Manager" vælger du "properties" for dit domæne. Under "Custom Errors" finder du 404-fejlen og ændre den til:
Message type: "URL"
URL: "/index.asp"

På selve siden (index.asp) kan du nu hente stien (f.eks. http://www.eksperten.dk/kat/2/) ud ved hjælp af Request.ServerVariables("QUERY_STRING"). Hvis du gøre det får du følgende streng:
404;http://www.eksperten.dk/kat/2/

Fra den streng kan du selv hente de variabler, du skal bruge.

Jeg ved ikke om det er verdens smarteste måde at gøre det på, men det virker i hvert tilfælde. Men det kræver selvfølgelig, at du har adgang til at rette fejlmeddelelsen på serveren (hvis du har en ordentlig udbyder, kan det naturligvis også lave sig gøre).
Avatar billede carlsson Nybegynder
27. februar 2002 - 21:54 #6
Jeg er helt ny i ASP.
Hvordan "skærer" jeg URL'en i stykker?
Avatar billede tniels Nybegynder
27. februar 2002 - 22:36 #7
Det er et godt spørgsmål. Det kommer meget an på, hvordan du vil have URL'en til at se ud.
Hvis du gør som ovenfor, og du så har strengen "404;http://www.eksperten.dk/kat/2/", kan du gøre følgende:

sURL = Request.ServerVariables("QUERY_STRING") ' her er strenger "404;http://www.eksperten.dk/kat/2/"
sID = right(sURL,len(sURL)-32)
IF len(sID) > 0 THEN
    sID = replace(sID,"/","")
END IF
response.write(sID)

Tallet 32 afhænger af hvorlangt domænet er. Hvis det var jubii.dk, ville tallet være 28.
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