Avatar billede kourinsu Nybegynder
26. oktober 2003 - 19:23 Der er 2 kommentarer og
1 løsning

Ændring når session udløber

Jeg vil gerne lave en online-liste over mine brugere på mit website. Brugerne er registerede i en mysql database, hvor der i en kolonne, enten skal stå 0 for offline eller 1 for online. Jeg har ikke noget problem i at ændre værdien når de logger på eller af, men jeg vil også gerne at værdien bliver ændret til 0, når session udløber.

Nogen der har nogen firslag? Kan det overhovedet lade sig gøre?
Avatar billede sukos Juniormester
27. oktober 2003 - 12:14 #1
Ved login sætter du en session som hedder f.eks. logintid og som har en "tidsværdi"

$ligenu = time(); //Tiden i sek. lige nu, siden 01-01-1970
$plustid = 300; // 300 sek. / 60 = 5 min.

$_SESSION["logintid"] = ($ligenu+$tid);

På de sider som man skal være logget ind på, spørger du så:

if($_SESSION["logintid"] < time()) {
//lav din query, slet sessions, evt. blot logintid og måske en form til login igen
}else{
$_SESSION["logintid"] = ($ligenu+$plustid); //opdater session logintid til ny tid
}
Avatar billede sukos Juniormester
27. oktober 2003 - 12:17 #2
Hvis en bruger blot lukker vinduet ned, står han/hun jo så også stadig som online i DB'en.

Men når du laver din query for at vise online, så start med at ændre alle som er mindre en f.eks. $ligenu+$plustid

Altså, mit forslag går på at du "tæller" sekunder :O)
Avatar billede kourinsu Nybegynder
26. februar 2005 - 16:47 #3
Lukker
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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