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 !!?
 

Neue Beiträge

Zurück