<?php
$db_host = ""; //mysql Host
$db_user = ""; //mysql User
$db_passwort = ""; //mysql Passwort
$db_name = ""; //mysql Datenbank
$tabelle = "onlineuser"; //Tabellenname
$online_time ="300"; //Zeit in sec die ein user "online" ist
$db = mysql_connect($db_host, $db_user, $db_passwort)or die ("Konnte Verbindung nicht herstellen");
mysql_select_db($db_name,$db)or die ("Konnte Datenbank nicht finden");
$time = explode(" ", microtime()); //Hier gibts die MicroTime bsp: 0.86646800 1057693054
$ltime = (double)$time[0]; //der linke teil also 0.86646800. double ist Variablentyp
$rtime = (double)$time[1]; //der rechte teil also 1057693054. double ist Variablentyp
$UserId = $ltime + $rtime; //Hier wird aus beiden teilen in addition(deswegen der Variablentyp) eine 99%tig einzigartige ID erstellt
$IP = getIP(); //Remote addresse des User oder besser gesagt die IP bsp: 127.0.0.1 (localhost)
$dummy = NULL; //Einfach so lassen die brauchen wir später um ein paar Daten zu speichern
$delete_time = $rtime - $online_time; //jetzige Zeit minus unsere $online time
$delete = mysql_query("DELETE FROM ".$tabelle." WHERE TIME < ".$delete_time) or die(mysql_Error());
$dummy = mysql_fetch_row(mysql_query("SELECT * FROM ".$tabelle." WHERE IP LIKE '".$IP."'")); //Abfrage der IP
if($dummy == false) { //wenn IP nicht drinne steht User einfügen
$ok = mysql_query("INSERT INTO ".$tabelle." (UserID,IP,NAME,TIME) VALUES('".$UserId."','".$IP."','".$HOST."','".$rtime."')") or die("INSERT fehlgeschlagen");
}
$result = mysql_query("SELECT COUNT(*) AS total FROM ".$tabelle); // alle Einträge in total speichern
$row = mysql_fetch_array($result); //$row["total"] ist nun die Anzahl der Online User
echo("Es sind zur Zeit ".$row["total"]." Benutzer online");
?>