- Ad -
IMPRESSUM dotted_line KONTAKT dotted_line search dotted_line Contact dotted_line sitemap
202 PHP-Resource Mitglieder online
php-resource



Archiv verlassen und diese Seite im Standarddesign anzeigen :
login script mr. happiness - user online anzeige?


 
cid
07-09-2006, 23:47 
 
hallo, ich hab n login script ganz nach dem tutorial von mr happiness gebaut und das klappt echt super. danke fürs tutorial is echt klasse!
ich hab jetzt nur 1 problem:
ich will auf meiner seite anzeigen welcher user online is.

ich hab das momentan so geregelt, dass ich einfach die user ausgebe bei denen eine UserSession vorhanden ist. Das klappt auch, aber sobald ein User sich nicht ausloggt, sondern einfach den Browser oder das Fenster schließt, dann wird die UserSession auch nicht gelöscht und dadurch wird er so lang als online angezeigt bis er sich wieder neu einloggt und dann ausloggt.

wie könnt ich das machen, dass sobald die user die seite verlassen sich die UserSession gelöscht wird?

hoffe mir kann wer helfen :(

 
wahsaga
08-09-2006, 00:42 
 
http://www.php-resource.de/forum/search.php?s=&action=showresults&searchid=110552&sortby=lastpost&sortorder=descending
http://aktuell.de.selfhtml.org/artikel/programmiertechnik/useronline/index.htm

 
jahlives
08-09-2006, 03:44 
 
Füge der Tabelle wo die Session ID dem User zugeordnet ist ein Zeitfeld ein. Jeder Klick des Users sollte dann ein Update mit der aktuellen Zeit nach sich ziehen.

/*Aktualisieren der Zeit des Users bei jedem Klick*/
$sql = "UPDATE user SET zeit=".time()." WHERE session='".strip_tags(SID)."'";
/*Abrufen der Usernamen
10 Minuten Ablaufzeit
setzt voraus, dass zeit ein UnixTimeStamp ist*/
$sql = "SELECT uName FROM user WHERE session != '' AND zeit > ".time() - 600;

Gruss

tobi

 
cid
08-09-2006, 17:26 
 
hey, es hat geklappt!
ich musste das SELECT uName FROM user WHERE session != ' ' AND zeit > ".time() - 600;

allerdings umändern in :

SELECT uName FROM user WHERE zeit > ".time() - 600;

dann gehts. vielen dank für deine Hilfe :)

 
mrhappiness
10-09-2006, 20:31 
 
WHERE usersession IS NOT NULL wäre schon anzuraten, sonst kriegst du expliziz ausgelogge User erst zu spät mit

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:36 Uhr.