Hej! Håller på med precis samma sak men har inga direkt lösningar. Har utvecklat två arbetsförslag och håller på och testar dem nu. Logga ut ef session timeout
Denna fråga är säkert ställd ett antal ggr.
Men jag lyckas inte att hitta den.
Har en site som håller reda på inloggningen via en session variabel.
Och loggar inte användaren ut så körs ju inte updaten så användaren fortfarande är "online".
Antar att det blir via global.asa man får gå. Någon som kan kasta upp ett kodexempel ?
' ##-- SQL sats som skall köras...
sql = "update users set online = 0 where id = " & session("login")
cnn.execute(sql)
W2k/ASPSv: Logga ut ef session timeout
Den ena är en include i toppen på alla sidor, denna uppdaterar en timestamp i databasen, varpå jag kör ett jobb var n:e minut som sätter användaren till offline om tidsskillnaden mellan timestampen och now() är mer än x minuter. Nackdel: tar mycket prestanda då det blir mycket db-skrivningar.
Fördel: Felsäker samt möjliggör andra roliga funktioner som att alltid veta var användaren är på sajten genom att även passa med sidans funktionsnamn!
Andra tesen är att i global.asa sätta en array som jag stoppar in session("userId") i vid session on_end. Sedan har jag ett jobb som körs på de sidor där onlinestatus skall presenteras som går igenom array:en om den inte är tom och uppdaterar db onlinestatus för varje userId som finns i array:en. Nackdel: inte lika säker samt att jag inte fått till array-hanteringen ännu så jag ha rinte kunnat testa.
Fördel: Den är snäll mot systemet och db:n i allmänhet!
Hjälp gärna till med synpunkter och andra lösningar!
// christian //