Toon posts:

Session_OnEnd global.asa

Pagina: 1
Acties:

Verwijderd

Topicstarter
Een sessie eindigt standaard na 20 min. Stel ik wil het volgende:

Een gebruiker mag 90 min kloten zonder dat hij een request of refresh doet. -> Session.Timeout = 90
Daarna moet Session_OnEnd worden aangeroepen

Wanneer een gebruiker de browser afsluit moet gelijk Session_OnEnd aangeroepen worden. Hoe??? want we hadden Session.timeout immers op 90 gezet.

Wanneer een gebruiker klikt op een link uitloggen dan moet het liefst ook gewoon Session_OnEnd aangeroepen worden. Maar goed daar kan ik die code ook wel in dat bewuste script plaatsen.

Het gaat me vooral om hoe ik de 1e 2 punten kan combineren.

Alvast bedankt.

edit:
typo

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 16:30

Janoz

Moderator Devschuur®

!litemod

De server kan nooit weten waneer de browser afgesloten wordt. Het enige dat je zou kunnen proberen is een javascriptje dat bij een onClose event oid nog ff probeert uit te loggen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • vinnux
  • Registratie: Maart 2001
  • Niet online
Een sessie is per definitie geindigd waneer de browser is afgesloten.

Verwijderd

Topicstarter
Op vrijdag 30 november 2001 13:10 schreef vgouw het volgende:
Een sessie is per definitie geindigd waneer de browser is afgesloten.
Was dat maar zo. De web-server weet daar niets van. Die "weet" dat pas wanneer de sessie timeout tijd is verlopen.

  • vinnux
  • Registratie: Maart 2001
  • Niet online
Ja de server kan het inderdaad niet weten,

maar als een client er opnieuw naar de pagina komt krijgt ie een nieuwe sessie.

Dus ik snap het probleem niet helemaal. Of moet het zo zijn dat als ene sessie eindigt er perce een functie aangeroepen moet worden ?

Zo ja wat doet die functie ongeveer ?

Verwijderd

Topicstarter
Idd er moet een functie worden aangeroepen.

Deze functie verwijderd een tabel uit een database.

Verwijderd

Op vrijdag 30 november 2001 13:04 schreef SlowMo het volgende:
Wanneer een gebruiker klikt op een link uitloggen dan moet het liefst ook gewoon Session_OnEnd aangeroepen worden. Maar goed daar kan ik die code ook wel in dat bewuste script plaatsen.
Gebruik dan Session.Abandon (als ik het goed heb). Dan eindigt de sessie van de gebruiker.
Probleem verder is dat wanneer een browser gesloten wordt de sessie wel gestopt is, alleen de server dat niet weet en wacht op de timeout. Je zou dit misschien kunnen afvangen door wanneer een eem browser wordt gesloten een pagina op te roepen. Alleen wat als de gebruiker in meerdere browser tegelijk werkt?

Verwijderd

Topicstarter
Op vrijdag 30 november 2001 13:49 schreef ml1 het volgende:

[..]

Gebruik dan Session.Abandon (als ik het goed heb). Dan eindigt de sessie van de gebruiker.
Probleem verder is dat wanneer een browser gesloten wordt de sessie wel gestopt is, alleen de server dat niet weet en wacht op de timeout. Je zou dit misschien kunnen afvangen door wanneer een eem browser wordt gesloten een pagina op te roepen. Alleen wat als de gebruiker in meerdere browser tegelijk werkt?
Vreemd genoeg doet abandon het maar 1 keer. Beter uitgelegd: Wanneer ik inlog en vervolgens uitlog en session.abandon gebruik werkt deze, maar wanneer ik in diezelfe browser weer inlog en uitlog werkt session.abandon niet! :( Maar dat probleem zal wel bij mij liggen??

Tevens kan ik session.abandon niet gebruiken omdat ik bepaalde sessievars nodig heb in mijn Session_OnEnd

  • Crazy D
  • Registratie: Augustus 2000
  • Nu online

Crazy D

I think we should take a look.

Op vrijdag 30 november 2001 14:07 schreef SlowMo het volgende:
Tevens kan ik session.abandon niet gebruiken omdat ik bepaalde sessievars nodig heb in mijn Session_OnEnd
Dan denk ik dat je eigenlijk weinig alternatieven hebt. Of accepteren dat de onend pas komt na de timeout, of de boel misschien anders opbouwen zodat je niet zo afhankelijk wordt van het session_onend event?

Exact expert nodig?


Verwijderd

Op vrijdag 30 november 2001 14:27 schreef CrazyD_at_work het volgende:

[..]
of de boel misschien anders opbouwen zodat je niet zo afhankelijk wordt van het session_onend event?
Dat lijkt me beter. Het Session_OnEnd event is niet echt betrouwbaar. Het kan voorkomen dat deze dus niet opgeroepen wordt. Ik zou dus zeker naar alternatieven gaan zoeken.
Pagina: 1