"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

im "who's online" user austragen...

tomstig 23.06.2004 - 14:47 578 12
Posts

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
Ich mag für meine hp ein kleines "who's online" basteln. die tabelle sollte an und für sich nicht das problem sein, dass reinschreiben auch nicht, aber wie mach ich das, dass der user wieder aus der db gelöscht wird? wenn er zb sich nicht auslogged sondern nur das fenster schließt, dann hab ich ja keine möglichkeiten (außer vllt mit onunload="window.open(...)", aber das mach ich sicher nicht), den user wieder aus der db auszutragen...

wie kann man das machen?

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14592
ganz einfach: nen check einbaun ob der user seit (hausnummer) 5 minuten was gmacht hat. wenn nein => kick him out

dafür musst aber jede "session" (auch die eines gast) in die mysql db eintragen...

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
und wie überprüf ich das ohne cronjob??

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
Zitat von semteX
dafür musst aber jede "session" (auch die eines gast) in die mysql db eintragen...

das hatte ich sowieso vor...

dio

Here to stay
Registered: Nov 2002
Location: Graz
Posts: 4869
Zitat von tomstig
und wie überprüf ich das ohne cronjob??
cronjob? du baust das einfach in das "who is online" script ein.

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
jaja, weiß ich schon, aber wie gehts ohne cronjob??

gue

Addicted
Avatar
Registered: Feb 2003
Location: Linz
Posts: 400
Du löschst die Einträge nicht raus sondern zählst nur diejenigen, die seit z.B. 5 Minuten online waren/etwas getan haben (alte rauslöschen kannst du z.B. 1 mal am Tag mit einem cronjob o.ä. machen).

Also (Pseudo SQL Code):
SELECT count(id) FROM online WHERE lastactivity - NOW < 5 Minuten;

dio

Here to stay
Registered: Nov 2002
Location: Graz
Posts: 4869
oda lösch alle einträge nach zb 10 minuten.

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
thx, gue, gute lösung :)

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14592
ich versteh ned wofür du nen cronjob willst => Sobalt ein user auf die page geht wird eh das "who's online" ding "reaktiviert". und davor sieht ihn eh keiner.

den brauchst max wenn du GENAU wissn willst wann der user off und on ging

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
es wäre halt so, dass man nach einer bestimmten zeit die user aus der db löscht ...

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
das sollten deine visits erledigen.

edit: soll jetzt nicht heissen, dass du bei jedem visit dbeinträge löscht :)

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
war auch ein gedanke, ist mir beim fußballspielen gestern gekommen :D :D
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz