[php] Alle actieve gebruikers tellen

Pagina: 1
Acties:
  • 148 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • VR46
  • Registratie: Januari 2005
  • Laatst online: 08-09 12:51
Op vrijwel alle fora van tegenwoordig (phpBB, vBulletin, IPB) kan je precies zien hoeveel gebruikers momenteel op het forum ingelogd zijn en hoeveel gasten er zijn. Ik heb echter nooit echt gesnapt hoe dit gedaan wordt? Door middel van aantal actieve sessies tellen oid?
Daarnaast vraag ik me af, hoe een script er uit zou zien, waarmee je kan zien of een bepaalde gebruiker online of offline is. Je kan wel telkens bij het inloggen in de database opslaan of de gebruiker actief is, maar dat lijkt me ineffectief en deze waarde moet ook weer om worden gezet als de gebruiker offline is..
Kortom: hoe kan ik de gebruikers op mijn website tellen, en per persoon zien of ze online zijn of niet?

Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • Osiris
  • Registratie: Januari 2000
  • Niet online
D'r wordt, neem ik aan, bij elke "hit" van een bepaalde sessie het "last time online"-veld in de DB geupdate met die huidige tijd. En vervolgens kies je een bepaald aantal seconden/minuten/uren waarin jij vindt dat iemand nog "online" is (bijvoorbeeld 5 minuten of een uur, weet ik veel) en dan kun je per moment van de dag checken hoeveel sessies er een last-time-online-waarde tussen $nu en $nu-$jouwingesteldeinterval hebben. Ofzo. :P

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Ik schrijf mijn sessies middels een zelfgeschreven sessiebeheersysteem in de database, waarbij bij elke bezoeker een sessie wordt aangemaakt (of hervat, in het geval van een aanwezig, geldig, cookie).

Bij iedere opgevraagde pagina wordt het lasthit-veld in de sessietabel geüpdated, en het aantal "online" gebruikers is het aantal sessies die de afgelopen 5 minuten actief zijn geweest. Een gast krijgt als UserID -1 mee, een ingelogde gebruiker zijn ID uit de Users-tabel. Zo kun je de online gebruikers uitsplitsen in gasten en ingelogde gebruikers.

Met Mr. Pur dus /\

[ Voor 4% gewijzigd door CodeCaster op 31-05-2007 18:43 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Japidoff
  • Registratie: November 2001
  • Laatst online: 25-08 15:54
sessies, bij een hit van een gebruiker zet je de huidig date/time in de user tabel, en dan:
count users where user.time > (now() + 5 minuten)

gang is alles