1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
|
<?php
//Verbindung zur Datenbank
class config {
const host = 'localhost';
const user = 'dbuser';
const pass = 'dbpass';
const data = 'counter';
}
mysql_connect(config::host,config::user,config::pass) || die(mysql_error());
mysql_select_db(config::data) || die(mysql_error());
//Jetzt
$jetzt = time();
//Total auslesen
$getcount = mysql_fetch_object(mysql_query("SELECT total FROM counter WHERE id = '1' LIMIT 1"));
//IP speichern, falls noch nicht vorhanden
$query = mysql_query("SELECT ip, zeit, total FROM counter WHERE ip = '".$_SERVER['REMOTE_ADDR']."' LIMIT 1");
if(mysql_num_rows($query) == 0) {
$newcount = $getcount->total+1;
$update = mysql_query("UPDATE counter SET total = '".$newcount."' WHERE id = '1' ") || die(mysql_error());
$insert = mysql_query("INSERT INTO counter (ip, zeit) VALUES ('".$_SERVER['REMOTE_ADDR']."', '".$jetzt."')") || die(mysql_error());
} else {
$newcount = $getcount->total;
}
//Einträge älter als 2 Tage löschen
$alt = $jetzt - (3600*48);
mysql_query("DELETE FROM counter WHERE zeit < '".$alt."' && id != '1'");
//Besucher online auslesen
$cnt_online = mysql_query("SELECT COUNT(*) FROM counter WHERE zeit + 300 > '".$jetzt."'"); //300 entspricht 300 Sekunden, also 5 Minuten
$online = mysql_result($cnt_online, 0, 0);
//Besucher gestern auslesen
$cnt_gestern = mysql_query("SELECT COUNT(*) FROM counter WHERE zeit >= '".mktime(-24, 0, 0)."' && zeit <= '".mktime(-1, 59, 59)."'");
$gestern = mysql_result($cnt_gestern, 0, 0);
//Besucher heute auslesen
$cnt_heute = mysql_query("SELECT COUNT(*) FROM counter WHERE zeit >= '".mktime(0, 0, 0)."' && zeit <= '".mktime(23, 59, 59)."'");
$heute = mysql_result($cnt_heute, 0, 0);
//Ausgabe
echo "Heute: ".$heute."<br/>";
echo "Gestern: ".$gestern."<br/>";
echo "Total: ".$newcount."<br/>";
echo "Online: ".$online."<br/>";
?>
|