PHP:Counter

Aus DavaHome.NET Wiki

Wechseln zu: Navigation, Suche

Warnung! Das Script ist noch nicht gegen Injections geschützt! Benutzung auf Eigene Gefahr!


Ein einfaches, MySQL basiertes Counterskript.


Inhaltsverzeichnis

Keywords

php, funktion, function, codesnippet, snippet, code, codeschnipsel, code snippet, counter

Permalink

http://wiki.davahome.net/index.php/PHP:Counter


Code Snippet

Diesen MySQL Befehl in der entsprechenden Datenbank ausführen

CREATE TABLE IF NOT EXISTS `counter` (
`ip` varchar( 20 ) NOT NULL default '',
`date` date NOT NULL default '0000-00-00',
`time` int( 11 ) NOT NULL default '0'
) ENGINE = MYISAM DEFAULT CHARSET = latin1;

$MySQLRessource = Der Rückgabewert von mysql_connect()

function Counter($MySQLRessource)
{

	$ip = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : false;
	if($ip === false) return false;
	$ip = str_replace("'", "", $ip);
	$ip = htmlentities($ip);

	$today = date("Y-m-d");
	$yesterday = date('Y-m-d', strtotime("-1 day"));
	$month = date("m");
	$year = date("Y");	

	$pruefe_ip = mysql_query("SELECT `ip` FROM `counter` WHERE ip='$ip'", $MySQLRessource);	

	if(mysql_num_rows($pruefe_ip) === 0)
	{
		mysql_query("INSERT INTO counter ( ip , date, time )VALUES ( '".$ip."', '".$today."', '".time()."')", $MySQLRessource);
	}

	$jetzt = mysql_num_rows(mysql_query("SELECT time FROM counter WHERE time>'".(time()-300)."'", $MySQLRessource));
	$heute = mysql_num_rows(mysql_query("SELECT date FROM counter WHERE date = '".$today."'", $MySQLRessource));
	$gestern = mysql_num_rows(mysql_query("SELECT date FROM counter WHERE date = '".$yesterday."'", $MySQLRessource));
	$monat = mysql_num_rows(mysql_query("SELECT date FROM counter WHERE date LIKE '".$year."-".$month."%'", $MySQLRessource));
	$insgesamt = mysql_num_rows(mysql_query("SELECT date FROM counter", $MySQLRessource));
	
	//Aussehen des Rückgabewerts
	$R = "<b>Besucher:</b> Gerade: " . $jetzt;
	$R .= " | Heute: " . $heute;
	$R .= " | Gestern: " . $gestern;
	$R .= " | In diesem Monat: " . $monat;
	$R .= " | Gesamt: " . $insgesamt;
	return $R;
}

Zusätzliche Informationen

Diese Funktion wurde nur angepasst. Das Originalskript kommt von Stephanie H. (Steffi).

Die Funktion von DavaHome wurde teilweise überarbeitet und verbessert. Außerdem wurde das Originalskript zu einer Funktion zusammengefasst.

Persönliche Werkzeuge
DavaHome