In diesem Codeschnipsel wird gezeigt, wie man Klicks auf spezielle Links zählen kann.
Als Tabellenname wird hier der Name linkcounter verwendet. Dieser ist aber natürlich anpassbar. Die Tabelle muss erstellt werden, und sie muss folgende Zeilen enthalten: id, anzahl, adresse. Folgender SQL-Code kann hierfür verwendet werden:
CREATE TABLE `linkcounter` (
`id` INT( 255 ) NOT NULL AUTO_INCREMENT,
`anzahl` INT( 255 ) NOT NULL,
`adresse` TEXT NOT NULL,
PRIMARY KEY ( `id` )
)
Auf die Seite, auf der dieser Code eingefügt ist, kann man z.B. wie folgt verlinken: domain.de/diese-seite.php?id=X. X muss an den jeweiligen Download bzw. die jeweilige Link-ID angepasst werden.
Werbeblocker aktiv?
Vermutlich aufgrund eines Werbeblockers kann an dieser Stelle leider keine Werbung angezeigt werden. Als Blog ist diese Website jedoch darauf angewiesen, um diverse Kosten abdecken zu können. Vielleicht möchtest du Servaholics ja in deinem Werbeblocker als Ausnahme hinzufügen und so unterstützen? 🙂
Datenbank-Zeilen mit ID, Anzahl und Adresse müssen manuell in die Datenbank eingetragen werden - oder man erstellt sich hierfür auch ein eigenes Script.
So, nun zum Code zum Zählen:
<?php
if (is_int($_GET['id'])) {
// Datenbankzugang
$server = "localhost"; // z.B. localhost, 127.0.0.1 oder externer Server
$user = ""; // Benutzername
$password = ""; // Passwort
$database = ""; // Datenbank
// Verbindung aufbauen
@mysql_connect ($server, $user, $password) or die ("Entweder der Server (Host), der Benutzername oder das Passwort stimmen nicht. MySQL gibt folgenden Error aus: ".mysql_error()."");
@mysql_select_db ($database) or die ("Die Datenbank ist nicht vorhanden, MySQL gibt folgenden Error aus: ".mysql_error()."");
// Daten aus der Datenbank abrufen
$a = "SELECT * FROM linkcounter WHERE id = '".$_GET['id']."' LIMIT 1";
$b = mysql_query($a);
// Eintrag zur ID vorhanden
if (mysql_num_rows($b) == 1) {
$c = mysql_fetch_assoc($b);
$adresse = $c['adresse']; // Adresse auf die weitergeleitet werden soll bzw. Downloadlink (muss z.B. http:// oder https:// enthalten)
$alter_link_counter_stand = $c['anzahl']; // alten Counter-Stand speichern
$neuer_link_counter_stand = $alter_link_counter_stand + 1; // alten Counter-Stand um 1 erhöhen und speichern
// neuen Counter-Stand in die Datenbank eintragen
$aendern = "UPDATE linkcounter Set anzahl = '".$neuer_link_counter_stand."' WHERE id = '".$_GET['id']."'";
$update = mysql_query($aendern);
// Weiterleitung, ob auf eine Adresse oder einen Downloadlink ist egal
header("Location: ".$adresse."");
}
}
?>