Avatar billede tgl Nybegynder
15. oktober 2002 - 00:22 Der er 13 kommentarer og
2 løsninger

besked i pop-up vindue når bruger glemmer at logge ud

Nå, men så er det blevet min tur til at få besvaret et spørgsmål som jeg håber at kunne forklare præcist :

Jeg har en login-side i asp hvor man ikke overraskende kan indtaste sit brugernavn og password og derefter blive ført videre til de efterfølgende asp-sider.

Det er der ikke noget problem med, men hvis en bruger efter at have logget sig ind og befinder sig på en side og pludselig kommer i tanke om at bussen afgår om to minutter og dermed glemmer at klikke på "log ud" vil jeg gerne have det lavet sådan, at der popper et nyt vindue op når bruger forsøger at forlade den side han/hun er på.
I pop-up vinduet skal man naturligvis kunne logge sig ud.
---------------------------------------------------
PS! Jeg har brugt sessions-variabler til at gemme brugerens log-ind data i.


Har nogen noget kode liggende som kan klare ovenstående problem vil jeg gerne have en kopi af den.
Avatar billede whatever Nybegynder
15. oktober 2002 - 00:35 #1
Hvorfor egentlig det? Sessionen slettes vel alligevel, når brugeren lukker browservinduet.
Avatar billede tgl Nybegynder
15. oktober 2002 - 00:44 #2
Ja, det er rigtigt at de slettes når vinduet lukkes, men en anden mulighed er at brugeren kunne indtaste en URL til en anden webside og dermed forlade siden uden at logge ud.
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 09:13 #3
Global.asa - noget med session.onend() (Jeg _kan_ ikke lige huske, hvad den hedder).
Men det er teorien at det er der, det skal laves.
Det kørers, når sessionen afsluttes - og det gør den i princippet, når sitet (ikke siden) forlades.
Avatar billede tgl Nybegynder
15. oktober 2002 - 11:19 #4
the_bma_man >> Jeps, jeg har også læst noget med global.asa filen og session-vars.

Spørgsmålet er så om sætningen Session.Abandon skal indsættes i den sub du nævner.

Dvs. måske noget i retning af :

Sub Session_onEnd
  Session.Abandon
End sub

Eller er Abandon-egenskaben indkodet i ovennævnte Sub????
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 11:25 #5
Nej, jeg vil mene, at den sub bare skal lave det halløj med at smide en pop-up op.
Den bliver jo netop kaldt, når en session afsluttes.
Og det sker, mig bekendt, i tre situationer:
1. Man går ud af sitet
2. Der kommer en time-out
3. Man laver en sessin.abandon i sin asp-fil.
Avatar billede rasmuslund Nybegynder
15. oktober 2002 - 12:58 #6
"Session_OnEnd" bliver afviklet når en brugeres Session.Timeout er udløbet. Hvis Session.Timeout er sat til 20 minutter vil der fra brugeren har requestet den sidste side gå 20 minutter inden denne event bliver afviklet. Brugeren kan imellemtiden have lukket sin browser og være taget på ferie. :-)
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 13:04 #7
rasmuslund >> Den bliver i hvert fald også kaldet ved en abandon!
<klip>
The Session_OnEnd event occurs when a session is abandoned or times out. Of the server built-in objects, only the Application, Server, and Session objects are available.

</klip>
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 13:12 #8
Lige lidt mere ..
<klip>
Session object  A Session object is initialized when a user first requests a page from the server. The object persists until the session is abandoned, when the user closes and reopens the browser, manually (by calling the Session.Abandon method), or when the user's browser has not requested a page from the application for a specified period of time.
Session objects are global for any one user. You might use a session object to maintain a user's security level.
</klip>
Læg især mærke til
The object persists until the session is abandoned, when the user closes and reopens the browser.
Så det er altså også nok at lukke sin browser - man skal ikke vente på en time-out.
Ikke at det løser problemet for tgl - men der er jo heller ingen grund til ligefrem at forvirre ham.
Avatar billede rasmuslund Nybegynder
15. oktober 2002 - 13:20 #9
Ja men du vil stadigvæk ikke kunne få Session_OnEnd til at lave et response til brugeren - det kræver jo så at du laver et Session.Abandon når brugeren forlader dit site !!! Og det ved du jo ikke hvronår de gør.  Hvis du vidste det var det jo ikke nødvendigt at tjekke for det. Men i det øjeblik de lukker deres browser "dør" sessionen jo for den klient og det vil ikke være muligt for andre at vende tilbage i et "nyt" browser vindue. Du kan jo benytte Session_OnEnd til at rydde op. Den eneste måde en anden bruger kan returnere i den samme session er hvis man navigere væk fra siden og lader den stå. Og det kræver jo så at man returnere via tilbage knappen inden den tid som er angivet i Session.Timeout.

Sæt evt. Session.TimeOut ned til f.eks. 5 min.

:-)
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 13:28 #10
Ja, eller lav en response.expires på siderne.
Avatar billede rasmuslund Nybegynder
15. oktober 2002 - 13:31 #11
Response.expires gør kun at siden læses igen fra serveren !!! Så det mener jeg ikke man kan bruge her !
Avatar billede the_bma_man Nybegynder
15. oktober 2002 - 13:33 #12
Argh ok.
Nej, der var jeg lige lidt længere ude i en løsning
Sorry.

Session.Timeout er vejen frem - og så bruge Session_OnEnd()
Avatar billede rasmuslund Nybegynder
15. oktober 2002 - 13:41 #13
Jeg har forøvrigt også set denne funktion i javascript :

<script for=window event=onafterprint>
if (confirm('Dokumentet vil nu blive sendt til printeren, ønsker du at blive retuneret til det rigtige dokument?')) { window.location.href= 'http://mySite.dk/myPage.asp'; }
</script>

Det gør at når brugeren trykker på udskriv knappen kommer der en alert boks frem. Måske kan man lave noget tilsvarende i tql's tilfælde.
Avatar billede tgl Nybegynder
17. oktober 2002 - 13:48 #14
Davs...

Jeg takker for jeres kommentarer og svar og mener nu at have opfattet situationen og mulige løsninger.

Dermed deler i pointene mellem jer.
Avatar billede the_bma_man Nybegynder
21. oktober 2002 - 09:18 #15
OKI.
Tak for point.
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