Avatar billede jackass- Nybegynder
15. juni 2006 - 05:45 Der er 3 kommentarer og
1 løsning

Vis brugere der er logget ind?

Hej

Pt. sætter jeg nogle $_SESSION variabler om brugeren når han/hun er logget ind, og gemmer login timestamp i user_table.

Men hvordan ser jeg hvilke brugere der er logget ind? Det er jo ikke nok bare at se på login timestampet, eftersom det bare viser tidspunktet hvor brugeren sidst loggede ind.

Er der nogen der har en idé om hvordan man gør det?

/jack
Avatar billede iss Novice
15. juni 2006 - 08:51 #1
Hver gang en bruger henter en side lave du en update på en der hedder last_seen og så siger du bare dem der er online er dem hvis last_seen maks er x antal minutter gammel.
Avatar billede webstuff Nybegynder
15. juni 2006 - 10:09 #2
Du kan f.eks lave 2 ekstra felter i brugertabellen.

onoff = varchar(3)
sidstset = DATETIME

Og så kører du bare dette script i toppen af hver side.

if($_SESSION['login'] == true){
mysql_query("UPDATE brugerTabel SET onoff = 'on', sidstset = NOW() WHERE brugerID = '$_SESSION[id]' LIMIT 1") or die(mysql_error());
}
mysql_query("UPDATE brugerTabel SET onoff = 'off' WHERE DATE_ADD(sidstset, INTERVAL 15 MINUTE) < NOW()") or die(mysql_error());

Du skal bare huske at ændre navnene på tabeller osv. og "INTERVAL 15 MINUTE" er det tidsinterval der skal gå før man bliver logget ud siden man sidst har opdateret siden.
Avatar billede webstuff Nybegynder
15. juni 2006 - 10:11 #3
og så er det jo bare at lave en onlineliste:

$q = mysql_query("SELECT * FROM brugerTabel WHERE onoff = 'on' ORDER BY id") or die(mysql_error());
while($r = mysql_fetch_assoc($q)){
echo $r['brugernavn']." er ".$r['onoff']."line.<br />";
}
Avatar billede jackass- Nybegynder
24. juni 2006 - 15:29 #4
Tak :)
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