Avatar billede juice.dk Nybegynder
03. december 2003 - 17:03 Der er 4 kommentarer

timeout og redirect

hey allesammen...
Når en bruger er idle i 20 min skal hans session lukkes og der skal redirectes til login siden hvor der skal stå "du blev logget ud fordi du er dåm" ell lignende. Jeg har tilføjet følgende til min asa fil:
Sub Session_OnStart
  Session.Timeout = 20
jeg går også ud fra at jeg skal bruge response.redirect"login.asp?msg=bla bla" jeg ved bare ikke hvornår.

hvordan spørger man om der er forekommet en timeout, og skal jeg spørge i alle filerne?
Avatar billede thesurfer Nybegynder
03. december 2003 - 17:11 #1
Hvis du kigger på f.eks. Yahoo! Mail, kan du se at deres timeout bare fjerner sessionen..
Når brugeren så prøver på at åbne en side der kræver en bestem session, får han/hun at vide at "Du er lukket ud fordi du har været inaktiv" (eller ligende).

Med andre ord:
- Bruger logger ind -> session("login") sættes til "ja" + session.timeout = 20
- Brugeren er derefter inaktiv i 20 min -> session("login") slettes
- Brugeren forsøger at åbne en side der kræver at session("login") = ja -> da session("login") er slettes, sendes han/hun til login siden.. det hele starter så forfra..
Avatar billede juice.dk Nybegynder
03. december 2003 - 17:40 #2
det har jeg fået til at virke. Men hvordan får brugeren meddelelsen "du har være inaktiv bla bla..". Det skal kun forekomme når brugeren har været inaktiv i 20 min. ikke fordi session("login") = nej. Der må være en anden betingelse som man kan spørge på.
Avatar billede thesurfer Nybegynder
03. december 2003 - 17:44 #3
Det tror jeg ikke der er, fordi asp kode kun udføres når en side loades.. altså når siden sendes til serveren.. og det gør den jo ikke når brugeren ikke laver noget..
Avatar billede crapman Nybegynder
04. december 2003 - 10:18 #4
Du kan jo alternativt også smide sådan en ind:

<META http-equiv="refresh" content="1260; url=timeout.asp">

Den smider brugeren videre til en side der hedder timeout.asp efter 21 min. På denne side skriver du bare at brugerens session er udløbet... Hvis du sætter sessionen til at udløbe efter 20 min er dette jo sandt.. For at være helt sikker kan du jo evt også lave en Session.Abandon på timeout.asp siden, som så får sessionen til at udløbe!
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