Link-Counter mit PHP und MySQL

Zuletzt aktualisiert: Dienstag, 03. Januar 2017 Geschrieben von Jan Pionzewski

Mittels PHP und einer Datenbank lässt sich ein eigener Link-Counter erstellen. Ein solcher Link-Counter ist dann sinnvoll, wenn du beispielsweise wissen möchtest, wie oft eine Datei von deiner Webseite heruntergeladen wurde. Auch andere Einsatzmöglichkeiten sind denkbar.

In diesem Artikel kannst du nachlesen, wie du mit Hilfe von PHP und MySQL einen eigenen Link-Counter erstellen kannst.

 

Schritt 1: Datenbankstruktur anlegen

Zuerst muss, beispielsweise mit phpMyAdmin eine entsprechende Datenbankstruktur angelegt werden.

 

Code-Beispiel:

CREATE TABLE `counter` (
`id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`url` VARCHAR( 255 ) NOT NULL ,
`count` INT( 11 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM COMMENT = 'Link-Counter Tabelle';

 

Schritt 2: Link-Counter anlegen

Wenn die Datenbankstruktur besteht, kann nun der Link-Counter angelegt werden. Erstellen dazu eine PHP-Datei und benennen Sie diese beispielsweise "count.php". Folgendes PHP-Script muss in diese Datei eingetragen werden.

 

Code-Beispiel:

<?php
// Zugangsdaten für die Datenbank
$host  = "localhost";
$user  = "user";
$pass  = "passwort";
$datab = "datenbankname";
$table = "counter";
// Die per GET übergebene URL einlesen und datenbanksicher machen
$url = addslashes($_GET['url']);
// Verbindung zum MySQL-Server aufbauen
$db = @mysql_connect($host, $user, $pass);
if ($db) {
    if (@mysql_select_db($datab, $db)) {
        // Eintrag fuer die übergebene URL um 1 erhöhen.
        $query = "UPDATE $table SET count = count + 1 WHERE url = '$url'";
        @mysql_query($query);
       // Überprüfung, ob noch kein Eintrag für URL vorhanden ist
        if (mysql_affected_rows() == 0) {
            $sql_insert = "INSERT INTO $table (url, count) VALUES ('$url', '1')";
            @mysql_query($sql_insert);
        }
    }
}
// Auf übergebene URL weiterleiten
header("Location: ". $_GET['url']);
?>

 

Schritt 3: Den Link-Counter in die Webseite einbinden

Um nun den Link-Counter zu aktivieren, müssen dieser natürlich in die Webseite eingebunden werden. Dies funktioniert nach dem folgenden Schema.

 

Code-Beispiel:

<a href="/count.php?url=http://www.example.org/download.zip">Download</a>

 

 

Damit wäre der Link-Counter fertig gestellt und kann seine Arbeit beginnen.

 

 

 

Kommentare  
Barbara 2014-07-30 16:46
Bei mir funktioniert alles wunderbar. Vielen dank für das tolle Tool!
Antworten | Antworten mit Zitat | Zitieren
Der_Lump 2013-04-22 20:42
Top Anleitung und funzt auch, aber hätte da mal Fragen.

1.Kann mann die Counterzahl uch einbinden auf der HP ? Wenn ja wie ? Weil bei schritt 3 zeigt er nur den Link an aber nicht die Klicks.

2.Mir ist aufgefallen das in der Datenbank nicht den kommpletten link anlegt

zb. http://?????.de/index.php?site=static&staticID=13

und das kommt dabei raus http://?????.de/index.php?site

den eintrag legt er an und leitet mich auch nur dahin weiter. wie kann mann das ändern?
Antworten | Antworten mit Zitat | Zitieren
Sascha 2013-03-18 09:34
Also ich habe alles so gemacht wie es dort steht und kann nur sagen, bei mir klappt alles :)

Danke! :)
Antworten | Antworten mit Zitat | Zitieren
phil 2013-02-18 04:54
moin,

kann mich meinem vorposter nur anschließen, alles wie beschrieben gemacht, weiterleitung des links funktioniert, in die db wird nichts gespeichert...
Antworten | Antworten mit Zitat | Zitieren
mike 2013-01-20 21:07
Hi !
Habe soeben versucht alles so zu machen wie hier beschrieben .... die weiterleitung zur Seite funktioniert auch .... aber leider wird bei mir nix in die DB geschrieben ?
habe versucht mit www.meineseite.de/counter.php?url=www.ard.de

wird zwar weitergeleitet aber wie gesagt ... nix passiert in der db ... die verbindung selber steht ..... was nun ?
Antworten | Antworten mit Zitat | Zitieren
Kommentar schreiben