Linkcounter
Stefaan:stef
- php
Servus!
Um ein wenig Übersicht über das Surfverhalten meiner Besucher zu erhalten (BigBrother :) möchte ich einen Linkcounter einsetzen.
Das Prinzip des Counters mit Hilfe von PHP ist mir klar, nur wie kann ich dann das wirkliche Ziel des Links aufrufen?
Durch das Archiv wurde ich auch nicht wirklich schlauer... :(
Konkret:
{a href="counter.php3?id=12&url=http://www.wohinauchimmer.de"}Link{/a}
ID gibt den entsprechenden Datensatz an der erhöht werden soll, nur wie bring ich das Script dazu, nach erfolgreichen (oder nicht erfolgreichen) Zählvorgang die Seite aufzurufen?
Auf die schnelle wär mir eine weiterleitung mit JavaScript oder per Meta-Tag eingefallen, gibts besseres (ohne "Zwischenseite", damit der User nicht mitbekommt, dass was passiert ist)?
Danke euch!
Grüße, Stefan
Servus!
Schon mal mit ner Doku beschäftigt..?
Da steht sicher mal was von nem header drin!
Such mal a bissl! http://www.php3-forum.de
Tschüssle und a schees Tägle noch!
theab
Huhu und nen schönen Abend an das Forum!!
Ich habe mir auch mal so ein Linkcounter geschrieben. Allerdings zählt der nicht nur hoch, sondern schreibt auch Datum, Uhrzeit, evt. vergebene Session-ID usw. mit in ne Datei und gibt danach dann genau diese Seite aus, die der User ja mit dem Klick auf den Link haben wollte.
Im einfachsten Fall sieht das dann in etwa so aus:
<?
if(isset($url))
{
$fp = fopen("linklog.txt","a+");
fputs($fp,$url."\n");
fclose($fp);
header("Location: $url");
exit;
}
?>
(Keine Garantie für einen 100%ig sauberen und einwandfreien Code, lerne gerade selber noch PHP3.......)
Du kannst Dir natürlich das Schreiben irgendwelcher Daten in eine Datei sparen oder sogar noch ausbauen.
Wichtig ist dann aber die Zeile >>header("Location: $url");<<
Auf eine Sache musst Du bei der Funktion header() achten: Es darf vorher keine andere Ausgabe erfolgen. Und wenn an irgendeiner vorherigen Stelle eine Fehlermeldung auftaucht, stellt sich header() auch schon aufgrund der dann geprinteten Fehlermeldung stur.
Was übrigens auch interessant ist, bzw. bedacht werden könnte:
Argwöhnische User gucken ja immer in die Statuszeile und sehen dann da anstatt des eigentlichen Links, so wie er in der Linkbeschreibung steht, eine ganz andere wilde URL mit irgendwelchen Parametern und jeder Menge Gedöns.
Ich habe, auch wenn es nicht 100%ig alle zu Gesicht bekommen, mit JavaScript und nem OnMouseover den PHP3-Skriptaufruf versteckt. So bekommen diejenigen, die JavaScript aktiviert haben und auch nicht in den Quelltext sehen, gar nichts von dem, was Du da an Linkzählerei machst, mit.
Wie theab schon sagte, Infos unter http://www.php3-forum.de oder direkt unter http://www.php3.de
Wünsche viel Spaß,
Hackie
PS: Achja, beinahe hätte ich das vergessen: Ich will jetzt keinen Extra-Thread dafür aufmachen, aber trotzdem muss es gesagt werden.
Die T-Shirts sind klasse!! Schönen Dank!!! =))