von Philipp Gérard |
Auszug aus einer Counterklasse von mir:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18: | /*
* Name: Anzahl der User anzeigen, die höchstwarscheinlich momentan online sind.
* Autor: Philipp Gérard <gerard@axtis.com>
* Status: stabil
* Requir: PHP 4 - MySQL 3
* Return: INTEGER or ERROR
* L.Chng: 19.06.2003 14:45:05
**/
function useronline($tbl_id){
$time = time() - 300;
$sql = "SELECT timestamp FROM ".$this->tbl[$tbl_id]." WHERE timestamp >= ".$time."";
$query = mysql_query($sql,$this->conn) or die ("Kann Werte nicht auslesen: <pre>".mysql_error()."</pre>Folgender SQL-Code führte zu dem Fehler: <pre>".$sql."</pre>");
$num = mysql_num_rows($query);
return $num;
} |
|
von tschecutto |
Danke für die schnellen Antworten, ich werd mal schaun, ob ich das irgendwie hinbekomme, auch wenn ich daran zweifle...Vielleicht kann mir ja noch jemand irgendwie codemäßig auf die Sprünge helfen.
Jan |
von MCM |
Hi,
du musst einfach immer wenn der User eingeloggt ist und ne neue Seute aufruft, in der DB nen Eintrag aktualisieren, welcher den Timestamp der letzten aktivität enthält.
Wo das ausgegeben wird, Fragst du einfach in der DB nach, welche user nen timestamp > als jetzt - 5 min hat und gibst die aus. Hab das schonmal gemacht, find aber den code grad nicht |
von Marcus |
Gute Frage, denn wie willst du denn feststellen ob ein Mitglied grade online ist? IP? Letze Aktivität innerhalb eines Zeitraumes? Angemeldet sein ? |
von tschecutto |
Hallo zusammen,
Also, gleich mal vorweg, ich hab leider wenig Ahnung von PHP. Aber vielleicht kann ich mein Vorhaben ja mit Eurer Hilfe trotzdem realisieren:
Mitglieder können sich bei meiner Seite einloggen. Ich möchte, dass ein eingeloggtes Mitglied in Form von "Mitgliedsname ist gerade online" auf meiner Seite angezeigt wird. Sind mehrere Mitglieder online, sollen die Mitgliedsnamen mit einem Komma voneinander getrennt angezeigt werden (und das "ist" müsste dann natürlich durch "sind" ersetzt werden). Wie mache ich das??
Danke,
Jan
|
|