Håller på med ett chat-program. Har ett problem med inloggade användare som lämnar sidan utan att logga ut. Eftersom jag har en besökslista med de som är online så vill jag ha den så aktuell som möjligt. Undrar om det finns någon väl beprövad metod. Jag har nu en post per användare (ACTIVE) som används för uppdatering av sidan över aktiva användare. Så om användarna loggar ut utan att utföra logout-funktionen så blir de kvarliggande i databasen som aktiva.
Mina egna funderingar för tillfället är att ha en Application-variabel som TIMER som efter ungefär en gång varje minut söker igenom vilka användare som står aktiva i databasen men inte uppdaterats under tiden och logga ut dom. Rent funktionsmässigt fungerar det men lite osäker om hur mycket detta kommer att belasta servern, så min fundering är om det finns något bättre sätt att hålla en aktuell användarlista?
Det kan nog gå att lösa i Session_OnEnd. Så om användaren sticker från sidan, så ser du till att uppdatera användarens Activestatus när sessionen löper ut.
Det kan nog gå att lösa i Session_OnEnd. Så om användaren sticker från sidan, så ser du till att uppdatera användarens Activestatus när sessionen löper ut.
Kan väl tillägga att det gäller Global.asa som du beskriver antar jag!?
Hanyway om du inte har tillgång till Global.asa, så kan du köra två kolumner i databasen! en som heter "Status" och en som heter "Tid" när du loggar in på sidan så ändrar du status till "online" och uppdaterar tabellen "tid" med now(), sen så på varje sida som uppdateras hela tiden så uppdaterar du tabellen Tid med now() och samtadigt kör "Datediff" för att göra om alla "tid" som är äldre än t.ex 20 minuter till Offline! på såsätt så kan du hålla reda på dem som e online offline! sticker du från sidan och din tid blir äldre än 20 minuter så flaggar någon av dej som Offline!
Are you feeling me?
- Fred ut
R:/ självklart är man seg och inte läste hela inlägget :r där du själv beskrev min metod :r sry
Är det inte så att alla användarens Session:s är borta när man kommer till Session_OnEnd i global.asa? Då har man ju ingen aning om vilken användare som avslutade?