Ein einfacher Gesamt Text Counter, der sehr einfach an ihre Hompage anzupassen ist. Das Counterergebnis wird in einer von ihnen ausgewählten Textdatei gespeichert.
Damit niemand die Besucherzahlen durch Reloads oder sonstige Methoden hochtreiben kann, wird ein Anti Cheating System verwendet, welches mit einer IP-Sperre arbeitet.
Damit das Script einwandfrei arbeitet benötigen sie nur einen Webspace der php 5.x ausführen kann.
http://visyte.at/alpha-counter-version-1.x/index.php
Hier der Quelltext:
<?php
//****************************************
//* Alpha Counter by Visyte Version 1.03 *
//http://visyte.com/bin/adlc.php?Cmd=Download&AL=Yes&ID=1
//****************************************
//***************************
//* Einbindung des Counters *
//***************************
// Der Counter braucht nicht extra installiert werden, er muss einfach nur an der Stelle der Seite mit dem
// Syntax include("alphacounter.php"); eingebunden werden, wo er dann seinen Counterstand ausgeben soll.
// Der Ausgabestring kann auch mit wenig PHP Erfahrung geändert werden. Dies können sie einfach in der vorletzten
// Zeile des Scriptes machen.
//
// Ein Beispiel finden sie unter ac_test.php
//
// Moechte man mit einem bestimmten Starwert zum Zaehlen anfangen, so muss die Datei "Stat.dat" mit dem entspr. Wert befüllt werden.
// Aber Auchtung:
// Zur Befuellung auf der shell mit dem Kommando "printf" arbeiten, da sonst die Formatierung der Datei nicht mehr passt und kein Hochzaehlen erfolgt.
// Bsp.: printf "230" > Stat.dat
// Kontrolle mit dem Kommando "file":
// file Stat.dat muss folgendes ergeben:
// "Stat.dat: ASCII text, with no line terminators"
//*****************
//* Einstellungen *
//*****************
$CookieTimeOut = "200"; // Cookie Timeout in Sekunden
$Num_Save_IP = "10"; // IP Adressen die gespeichert werden sollen
$FontTag = "<font size=2 face=arial color=#000000>"; // Schrifteinstellungen fonttag
$IPFile = "COUNTER/IPs.dat"; // Datei in der die IPs gespeichert werden sollen
$LogFile = "COUNTER/Stat.dat"; // Datei in der die Counterdaten gespeichert werden.
//*************
//* Quelltext *
//*************
$currentIP = $_SERVER["REMOTE_ADDR"];
$currentCount = 1;
$ipList = array();
$shouldUpdate = false;
if(file_exists($IPFile)) {
$ipList = file($IPFile);
$ipList2 = array();
foreach ($ipList as $key => $ipItem) {
array_push($ipList2, trim($ipItem));
}
$ipList = $ipList2;
}
if (in_array($currentIP, $ipList)) {
$Action="read";
}
else {
$savedIPs = count($ipList);
if($savedIPs < $Num_Save_IP) {
array_push($ipList, $currentIP);
}
else {
array_shift($ipList);
array_push($ipList, $currentIP);
}
$data = implode("\n", $ipList);
file_put_contents($IPFile, $data);
$shouldUpdate = true;
}
if (is_file($LogFile))
$currentCount = file_get_contents($LogFile);
if ($shouldUpdate) {
$currentCount++;
file_put_contents($LogFile, $currentCount);
}
//echo "<html><body>Besucher (Gesamt): $currentCount";
echo "<html><body>";
echo "Besucherzahl dieser Seite: ";
//echo '<p style="width:50px;padding:5px;background-color:#000000;border: 2px solid #ff0000;">'.$currentCount.'</p>';
echo '<p style="width:50px;padding:5px;color:#00FF00;background-color:#000000;border: 2px">'.$currentCount.'</p>';
echo "</body></html>";
?>