Avatar billede jonas_h Nybegynder
08. januar 2006 - 23:17 Der er 10 kommentarer

Returnere hvilken side man er på.

Findes der en kommando, som returnerer den asp-fil man er på? Har ledt i så lang tid, men kan simpelthen ike finde det!
Avatar billede hansdam Nybegynder
08. januar 2006 - 23:26 #1
<%=Request.servervariables("HTTP_REFERER")%>
Avatar billede Slettet bruger
08. januar 2006 - 23:27 #2
Jepper... Eller hvis du bare vil have filnavnet og stien dertil er det:
<%=Request.ServerVariables("SCRIPT_NAME")%>
Se i øvrigt denne her hjemmeside:
http://www.w3schools.com/asp/coll_servervariables.asp

\Dan
Avatar billede hansdam Nybegynder
08. januar 2006 - 23:29 #3
Jeg læste forkert... Jeg troede du ledte efter en kommando der returnerede den url som man kommer fra...
Avatar billede thesurfer Nybegynder
08. januar 2006 - 23:45 #4
HTTP_REFERER er heller ikke til at stole på, da man kan skjule denne med software..

/theSurfer
Avatar billede thesurfer Nybegynder
08. januar 2006 - 23:47 #5
... en "ok" HTTP_REFERER-metode, ville være at bruge sessions..

I bunden af alle siderne indsætter man:

<% session("ref") = Request.ServerVariables("SCRIPT_NAME") %>

Så kan man checke "HTTP_REFERER" med:

if session("ref") = "noget her" then ...

/theSurfer
Avatar billede jonas_h Nybegynder
09. januar 2006 - 09:42 #6
SCRIPT_NAME virker.
Lige for at spørge om noget andet - skal  bruge det til at sende de fejl som kommer på siden til min mail, i stedet for at sende brugere videre til en 500-fejl.
Hvordan kan det være, at jeg ikke kan bruge
Set e = Server.GetLastError()
Response.Write e.ASPDescription osv? Ved I om det kan være webhotellet som har sat begrænsninger på (web10).
Avatar billede thesurfer Nybegynder
09. januar 2006 - 10:54 #7
Jeg har ikke brugt Server.GetLastError() før, men har fundet et link til det:
http://www.w3schools.com/asp/prop_asperrorobject.asp

Her er en anden metode:

<%
' Denne linie fortsætter med koden, hvis der er fejl..
' Linien placeres i toppen af dine filer, under Option Explicit (hvis du bruger det):
on error resume next
%>

Så kan du i bunden af filen bruge:

<%
' Hvis alt er OK, returneres fejlkoden 0 (nul).
' Hvis fejlkoden er andet end 0 (nul), er der fejl:
if err.number <> 0 then
  response.write "Der opstod en fejl:<br>" & err.number & " - " & err.description
end if

Du kan erstatte response.write med f.eks. en response.redirect..
Eksempel:

response.redirect "/fejl.asp?fejlkode=" & err.number & "&side=" & Server.URLEncode(Request.ServerVariables("SCRIPT_NAME"))

I "fejl.asp" (som jeg har placeret i roden via "/") kan du bruge:

body = ""
body = body & "Fejlkoden: " & request.querystyring("fejlkode") & vbCrLf
body = body & "Fejl i side: " & request.querystring("side")

' tilføj variablen "body" til din mailkomponenet's body-parameter og send mailen..

/theSurfer
Avatar billede thesurfer Nybegynder
09. januar 2006 - 10:56 #8
Listen med beskrivelser af fejlkoderne:
http://www.w3schools.com/tags/ref_httpmessages.asp

/theSurfer
Avatar billede thesurfer Nybegynder
09. januar 2006 - 10:57 #9
Nogle (de fleste?) hosts/webhoteller tillader f.eks. også at rette i fejlsiderne.. dvs, egen side i stedet for f.eks. en standard 404-fejlside..

/theSurfer
Avatar billede thesurfer Nybegynder
18. februar 2006 - 21:12 #10
Hvor langt er vi kommet her..? :-)

/theSurfer
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