Ist die Counter ID // ref => Ist der Übermittelte Referer! // mod => Darstellung des Zählers auf der Internetseite (Muss immer Zurückgegeben werden!) // |-> 1) Steht für ein Transparentes GIF! $datum = date("Y-m-d G:i:s"); $DB_verbindung = @mysql_connect ($DB_host,$DB_user,$DB_passwd); // Ist die IP Adresse in der IPignore Liste? $abfrage_ip = "select ipignore.counter_id from ipignore where ipignore.counter_id = '$ID' and ipignore.ip = '$REMOTE_ADDR'"; $erg_ip = mysql_db_query ($DB_dbname,$abfrage_ip,$DB_verbindung); if (mysql_num_rows($erg_ip) > 0) { // IP Ignorieren, also nur mod zurückgeben! LeseMod($mod); exit(); } else { // Wurde in dem Zählerzeitraum der Hit schon einmal gezählt? $abfrage_hits = "select hits.counter_id, hits.datum, hits.ip from hits where hits.counter_id = '$ID' and hits.ip = '$REMOTE_ADDR' and hits.datum >= (now() - INTERVAL $zaehlzeitraum MINUTE)"; $erg_hits = mysql_db_query ($DB_dbname,$abfrage_hits,$DB_verbindung); if (mysql_num_rows($erg_hits) > 0) { // JA Im Zählerzeitraum wurde ein Eintrag in die DB gemacht!! // Wurde ein Referer mit übermittelt? if (strlen($ref) >= 1) { // Ja Referer wurde übermittelt! $abfrage_hits = "select hits.counter_id, hits.datum, hits.ip, hits.referer from hits where hits.counter_id = '$ID' and hits.ip = '$REMOTE_ADDR' order by hits.datum DESC"; $erg_hits = mysql_db_query ($DB_dbname,$abfrage_hits,$DB_verbindung); list ($id_a, $datum_a, $ip_a, $referer)=mysql_fetch_row($erg_hits); if (strlen($regferer) == "0") { // Steht der Referer in der Referer Ignore Liste? $abfrage_referer = "select refignore.counter_id from refignore where refignore.counter_id = '$ID' and locate(refignore.referer, '$ref') > 0"; $erg_referer = mysql_db_query ($DB_dbname,$abfrage_referer,$DB_verbindung); if (mysql_num_rows($erg_referer) > 0) { // Dieser Referer darf nicht mit in die DB aufnommen werden! LeseMod($mod); exit(); } else { // Dieser Referer MUSS nicht mit in die DB aufnommen werden! $abfrage_hits = "update hits set hits.referer = '$ref' where hits.counter_id = '$id_a' and hits.datum = '$datum_a' and hits.ip = '$ip_a'"; $erg_hits = mysql_db_query ($DB_dbname,$abfrage_hits,$DB_verbindung); LeseMod($mod); exit(); } } else { LeseMod($mod); exit(); } } LeseMod($mod); exit(); } else { // Nein Also incl. Referer in die Datenbank aufnehmen und den Gesamtzähler um 1 erhöhen! // Steht der Referer in der Referer Ignore Liste? $abfrage_referer = "select refignore.counter_id from refignore where refignore.counter_id = '$ID' and locate(refignore.referer, '$ref') > 0"; $erg_referer = mysql_db_query ($DB_dbname,$abfrage_referer,$DB_verbindung); if (mysql_num_rows($erg_referer) > 0) { // Dieser Referer darf nicht mit in die DB aufnommen werden! $abfrage_hits = "insert into hits (counter_id, datum, ip, browser, referer) VALUES ('$ID', '$datum', '$REMOTE_ADDR', '$HTTP_USER_AGENT', '')"; $erg_hits = mysql_db_query ($DB_dbname,$abfrage_hits,$DB_verbindung); $abfrage_sites = "update sites set sites.total_hits = sites.total_hits + 1 where sites.counter_id = '$ID'"; $erg_sites = mysql_db_query ($DB_dbname,$abfrage_sites,$DB_verbindung); } else { // Dieser Referer MUSS nicht mit in die DB aufnommen werden! $abfrage_hits = "insert into hits (counter_id, datum, ip, browser, referer) VALUES ('$ID', '$datum', '$REMOTE_ADDR', '$HTTP_USER_AGENT', '$ref')"; $erg_hits = mysql_db_query ($DB_dbname,$abfrage_hits,$DB_verbindung); $abfrage_sites = "update sites set sites.total_hits = sites.total_hits + 1 where sites.counter_id = '$ID'"; $erg_sites = mysql_db_query ($DB_dbname,$abfrage_sites,$DB_verbindung); } LeseMod($mod); exit(); } } ?>