Hi.
Ich habe aus den Tutorials das folgende Script kopiert und durchlaufen lassen.
Leider erhalte ich immer wieder den folgenden Fehler und finde nicht, warum:
Undefined variable: REMOTE_ADDR in C:\xampp\htdocs\Bgame\user_online.php on line 30
Script:
Ich habe aus den Tutorials das folgende Script kopiert und durchlaufen lassen.
Leider erhalte ich immer wieder den folgenden Fehler und finde nicht, warum:
Undefined variable: REMOTE_ADDR in C:\xampp\htdocs\Bgame\user_online.php on line 30
Script:
PHP:
<?
// die Datei, in die geschrieben werden soll
$datei = "useronline.dat";
// erstelle Datei, falls sie nicht existiert
if (!file_exists($datei)) fclose(fopen($datei, "w"));
// Einlesen der Datei in ein Array (eine Zeile pro Arrayfeld)
$users = file($datei);
$gefunden = false;
// Anzahl der Einträge ermitteln
$anzahl_users = count($users);
// Datei zum Schreiben öffnen
$fp = fopen($datei, "w");
// Durchlaufen der Einträge
foreach($users as $user)
{
// in ein Array aufsplitten
$user = explode("|", $user);
// wenn der Eintrag älter als 5 Minuten (=300 Sekunden) ist...
if ($user[1]+300 < time())
{
// Anzahl der User um 1 verringern
$anzahl_users--;
// nächsten Schleifendurchlauf starten
continue;
}
// wenn der User schon eingetragen ist, dann...
elseif ($user[0] == $REMOTE_ADDR)
{
// ...aktuelle Zeit setzen
$user[1] = time();
// ...bestätigen, dass kein neuer Eintrag erforderlich ist
$gefunden = true;
}
// wieder in Zeichenkette umwandeln und Zeilenumbruch anfügen
$user = trim(implode("|", $user))."\n";
// in Datei schreiben
fputs($fp, $user);
}
// wenn der User noch nicht eingetragen ist...
if (!$gefunden)
{
// neuen Eintrag direkt in die Datei schreiben
fputs($fp, $REMOTE_ADDR."|".time()."\n");
// Anzahl der User um 1 erhöhen
$anzahl_users++;
}
// Datei schließen
fclose($fp);
// Ausgabe
echo $anzahl_users." User(s) online.";
?>