ONline-Anzeige funktioniert nicht

Grunge

Erfahrenes Mitglied
Hi,

ich habe ein kleines Problem. Und zwar habe ich eine Online-Anzeige programmiert, sie funktiniert aber nicht richtig.

PHP:
//Online
if(isset($_SESSION['ID'])){
$date=time();
$selecto=mysql_query("SELECT * FROM usr_online WHERE ip='$_SERVER[REMOTE_ADDR]'");
$mengeo=mysql_num_rows($selecto);
$session=$_SESSION['ID'];
if($mengeo < 1){ mysql_query("INSERT INTO usr_online(ip,time,nickname) VALUES('$_SERVER[REMOTE_ADDR]','$date','$session');"); }
else{ mysql_query("UPDATE usr_online SET time='$date' Where ip='$_SERVER[REMOTE_ADDR]' AND nickname='$session'"); }
}

.
.
.
$eextra=time()-60; //vor 10 min
	
	$sql="SELECT * FROM usr_online WHERE time<='$eextra'";
	$result=mysql_query($sql) or die(mysql_error());

    while($row=mysql_fetch_assoc($result))
	{
	echo "<a href=\"index.php?section=view_user&user=".$row['nickname']."\">".$row['nickname']."</a><br>";
	}

Also oben wir ein Eintrag in der Datenbank gemacht, und unten dann angezeigt in einer Tabelle..Das funktioniert nur, wenn ich bei der zweiten Abfrage bei "WHERE time>=" schreibe, was ja falsch ist, ansonsten gibt er mir nichts aus...Keine Fehler, trotz E_ALL....

Woran kann es liegen.

Noch als Anmerkung: Der obere Teil des Codes steht ganz oben auf der Seite ! und der untere Teil etwas weiter unten, also alles in einer Seite...Beim logout wird der eintarg gelöscht !
 
PHP:
$sql="SELECT * FROM usr_online WHERE time <= '".$eextra."'";
Versuch es mal so. Bei mir klappt es einwandfrei.

Sind die Daten in der Datenbank denn richtig?

PHP:
$eextra=time()-60; //vor 10 min
Ist übrigens eine Minute, nicht 10 Minuten ;)
 
Hm so funktioniert es bei mir auch nicht. Kann es daran liegen, das der auch gar nicht meine richtige IP speichert !?

Er schreibt immer 127.0.0.0 in die Datenbank !!?
 
Zurück