Computing

Besucher-, Seitenaufruf- und Besucheronlinezähler (PHP-Scriptpaket)

Leider sind die folgenden Hinweise nötig:
Aus gegebenen Anlass vorab ein Wort zum Copyright: Webseitenbetreiber dürfen entsprechend des Zitierrechts EINEN BIS ZWEI SÄTZE dieser Unterseite UMFORMULIERT und UNTER VERLINKUNG DER QUELLE auf ihre Seite übertragen, um eine Zurückstufung im Google-Suchmaschinenranking wegen duplicate content zu vermeiden: [André Chinnow, Internet: "", Hamburg 2009]
Achtung: Für die Richtigkeit und Vollständigkeit der hier gegebenen Hinweise wird keine Gewähr oder Haftung übernommen. Sie basieren auf Erfahrungen von Nicht-Fachleuten. Bevor Sie diese aufgreifen, klären Sie vor der Anwendung der hier gegebenen Informationen mit Fachleuten ab, ob Ihnen daraus Nachteile entstehen können. Den Herstelleranweisungen verwendeter Produkte ist unabhängig von den nachfolgenden Ausführungen zu folgen. Auch stellen die Aussagen zu Rechtslagen keine Rechtsberatung dar, sondern spiegeln nur eine persönliche Meinung des Verfassers wieder, welche falsch sein kann.

Ihre Suchbegriffe sind bereits gelb hervorgehoben. Oder suchen Sie innerhalb dieser Seite nach einen oder mehreren anderen Begriffen oder dem Teil eines Begriffs:

Suchbegriff:

1. Allgemeines zum PHP Traffic-Counter

Diese Software ist für User mit guten HTML-Kenntnissen geeignet. Für die besonders einfache und schnelle Installation einer Traffic-Auswertung (Besucher, Seitenaufrufe, Seiten je Besuch, Besucher online, Statistik) empfehlen wir dagegen (Klick auf"s Logo):



2. Demonstration des Traffic-Zählers

Besucher- und Besucheronline-Zähler: Bis jetzt waren hier 6851 eindeutige Besucher. In den letzten 30 Minuten waren 47 Besucher auf dieser Webpräsenz aktiv. (Traffic powered by "the chinnow network")


Zweite Variante - Besucher und Besucheronline getrennt, an verschiedenen Stellen anzeigen: In den letzten 30 Minuten waren 47 Besucher auf dieser Webpräsenz aktiv. (Traffic powered by "the chinnow network") ... Dann folgt beispielsweise ihr Text ... >Bis jetzt waren hier 6851 eindeutige Besucher.

und zum Schluss der Seitenaufrufs-Zähler: Seitenaufrufe: 10867



3. Detaillierte Beschreibung des PHP Traffic-Zählers

Die PHP-Logik der gebotenen Funktionen ist eng miteinander verwoben, so macht es keinen Sinn, etwas hiervon getrennt anzubieten. Es wird jeder Zugriff erfasst und nur diejenigen Dokumente in die Auswertung einbezogen, in welche Sie den PHP-Code einsetzen. Dieser Code speichert bei Aufruf der Seite die Daten für die Auswertung und zeigt die Seitenaufrufe an. Wenn Sie keine Ausgabe der Seitenaufrufe wünschen, können Sie die entsprechende Zeile Programmcode durch Voranstellen von "//" deaktivieren.

Es ist technisch nicht möglich, festzustellen, ob jemand nach dem Aufruf einer Webseite noch online ist oder die Seite verlassen hat. Man kann jedoch eine willkürlich festgelegte Verweildauer annehmen, innerhalb dieser der Besucher als noch online deklariert wird. Beim Provider 1und1 sind es beispielsweise in deren Traffic-Auswertungen 30 Minuten. Trotzdem können Sie es besser machen und nicht so tun, als wäre der erfasste User noch sicher auf der Webseite. Ein Satz wie: "Zur Zeit sind xx Besucher online" ist daher zu vermeiden. Besser ist die Aussage: "In den letzten 30 Minuten waren xx Besucher auf unserer Webseite aktiv."

Aber letztlich entscheiden Sie über den Wahrheitsgehalt Ihrer Aussagen. Der Besucher-, Seitenaufruf- und Besucheronline-Zähler zählt jedenfalls zuverlässig jeden Besucher und Seitenaufruf von Seiten, in die der PHP-Code eingefügt ist. Beispielsweise könnte ein mit seiner IP gespeicherter Besucher dreimal während seines Besuchs die gleiche Seite aufrufen. Die Besuche, also "Visits" würden dann um den Wert "1", die Seitenaufrufe, also die "Sidecalls" dieser Seite um den Wert "3" hochgezählt. Damit nun beim direkten Anspringen von Unterseiten Ihrer Webpräsenz - beispielsweise über Suchmaschinen - der Seitenaufruf nicht doppelt gezählt wird, weil beispielsweise noch ein Frame nachgeladen wird, werden als Seitenaufruf nur diejenigen Aufrufe eines Besuchers gezählt, die mindestens 60 Sekunden auseinander liegen. Bei der Auswertung über dieses Quelltext-Paket werden Besucher im Besucheronline-Zähler zudem auch dann erfasst, wenn diese länger als 30 Minuten online sind. Jeder Seitenaufruf wird in der Auswertung berücksichtigt, wiederkehrende Besucher werden nicht doppelt gezählt.

Ihre eigene Auswertung wird daher immer etwas von derjenigen Ihres Providers abweichen, weil der Provider zum einen auch Aufrufe von Seiten zählt, deren Zählung Sie nicht erfassen möchten und zum anderen dort jeder Aufruf - auch sehr kurz hintereinander liegende wie beim Nachladen eines Frames - gezählt wird. Sie haben also die Wahl zwischen den beschönigten Traffic-Daten Ihres Providers oder den tatsächlichen, selbst ermittelten Zugriffen.

In jedes Dokument, das in der Auswertung berücksichtigt werden soll, wird ein PHP-Codeblock eingefügt. Hierdurch wird bei jedem Zugriff auf dieses Dokument

  • dessen Zähler der Seitenaufrufe - Datendatei in der Syntax "countersidecalls_DOKUMENTNAME.htm.txt" - um den Wert eins erhöht
  • und geprüft, ob es sich um einen neuen Besucher handelt und dieser Zähler - Datendatei in der Syntax "counter_DOKUMENTNAME.htm.txt" - gegebenenfalls um den Wert eins hochgezählt
  • der Zähler aller Besucher - Datendatei in der Syntax "counterTOTALgroup.txt" - gegebenenfalls um den Wert eins erhöht.

Die Anzahl der Visits (BesucherOnline) dagegen wird bei einem jeden Aufruf eines Dokuments im Hauptverzeichnis in der Datei "BesucherOnlineLogfile.txt" im Unterverzeichnis "counter" Ihres Webspace erfasst - sofern der letzte Eintrag mehr als 30 Minuten zurückliegt. So erhalten Sie frühestens nach 30 Minuten den nächsten Eintrag in das Protokoll der Besucheronline-Zählung - dies beschleunigt den Seitenaufbau und verhindert eine unsinnige Masse an Einträgen in der genannten Protokolldatei. Vor allem bei größeren Webpräsenzen mit Dokumenten in Unterverzeichnissen - wie beispielsweise "chinnow.net" - würde der Seitenaufbau ohne diese 30-Minuten-Begrenzung unmäßig verzögert, weil der gesuchte Wert dann jedesmal aus mehreren, rekursiv in Unterverzeichnissen zu suchenden Datendateien ermittelt werden müsste.

Genaue Definition eines Visits nach den Richtlinien der Informationsgemeinschaft zur Feststellung der Verbreitung von Werbeträgern e.V. (IVW) für Online-Angebote: "Ein Visit bezeichnet einen zusammenhängenden Nutzungsvorgang. Ein Visit beginnt, wenn ein Nutzer innerhalb eines Angebotes eine PageImpression erzeugt. Jede weitere PageImpression, die der Nutzer im folgenden innerhalb des Angebotes erzeugt, wird diesem Visit zugeordnet. Der Visit wird als beendet angesehen, wenn länger als 30 Minuten keine PageImpression durchEden Nutzer erzeugt worden ist. Wechselt der Nutzer auf ein neues Angebot und kehrt innerhalb von 30 Minuten auf das alte Angebot zurück, so wird kein neuer Visit gezählt. Wechselt der Nutzer auf ein neues Angebot und kehrt nach Ablauf einer Frist von 30 Minuten auf das alte Angebot zurück, so wird ein neuer Visit gezählt."



4. Das Arbeits-Prinzip

Zur Zählung der Visits und der Besucheronline ist notwendig die Kurzzeit-Speicherung der IP-Adresse des Besuchers erforderlich. Wechselt dieser auf eine weitere Seite Ihrer Webpräsenz, wird über den dort eingesetzten PHP-Code abgeglichen, ob dessen IP schon in der Kurzzeit-Datenbank vermerkt ist. Diese Datenbank ist lediglich eine Textdatei auf Ihrem Webspace, eine "richtige" Datenbank ist wird nicht benötigt.

Für die Seitenaufrufs-Logik speichert eine weitere Textdatei die IP"s, jedoch nur für einen kürzeren Zeitraum als für die Besucherzählung. Diese Speicherung wird gebraucht, um den schon erwähnten doppelten Aufruf innerhalb von 60 Sekunden zu prüfen und einen gegebenenfalls doppelten Aufruf innerhalb dieser Zeit nicht zu zählen. So wird vermieden, dass beispielsweise das Nachladen eines Frames zu einer Doppelzählung führt.



5. Server- und andere Voraussetzungen

Server-Voraussetzungen:

PHP ab 4.0, keine Datenbank erforderlich

PHP-Webseiten Voraussetzungen:
Implementierung des in bestehende PHP-Dateien einzufügenden PHP-Codes ohne Vorarbeit. HTML-Webseiten Voraussetzungen:
Implementierung des in bestehende HTML-Dateien einzufügenden PHP-Codes mit folgender Vorarbeit:

Die HTM respektive HTML-Datei muss vom Server Ihres Providers, auf dem ihr Webspace liegt, geparst werden. Das bedeutet, dass nicht nur PHP-Code in PHP-Dateien, sondern auch PHP-Code in HTM-Dateien vom Server abgearbeitet wird. Der Aufwand hierfür ist - sofern Ihr Provider dies unterstützt - gering. Sie kopieren einfach die im gezippten Quelltext-Paket enthaltene Text-Datei ".HTACESS" in das Hauptverzeichnis Ihres Webspace. Ihr Provider könnte jedoch eine andere Formulierung dieser Zeile benötigen. Mir ist nur bekannt, dass der Provider 1und1 eine andere Syntax erwartet als die meisten anderen Provider. Sollte der PHP-Code in Ihren HTM-Dokumenten nicht abgearbeitet werden, fragen Sie bitte Ihren Webspace-Anbieter nach der erforderlichen Syntax.

Beispiel:
Syntax in der Datei ".HTACCESS" für Provider 1&1:
AddType x-mapp-php4 .php .htm .html
Drei weitere gebrüuchliche Syntaxen für die Datei ".HTACCESS" vieler anderer Provider:
AddType application/x-httpd-php php php4 php3 html htm
AddType application/x-httpd-php .html
AddType application/x-httpd-php .htm

Die Einbindung von PHP-Code in HTML-Dateien ist aus zwei Gründen sinnvoll: Zum einen werden in der Regel nur HTML-Dokumente von Suchmaschinen indiziert, zum anderen sind fast alle Webentwicklungs-Umgebungen nur für HTML ausgelegt. Sollten Sie nicht in der Lage sein, die richtige Syntax zu finden, so dass Ihre HTML-Dokumente auf PHP-Code geparst werden, dann können Sie ersatzweise ohne Nachteile in der Darstellung einfach die Dateiendungen Ihrer HTML-Dokumente von ".htm" oder ".html" auf ".php" ändern. Nachteile: Vor dem nächsten Bearbeiten in Ihrer Webentwicklungs-Umgebung (Frontpage, Netjet etc.) müssen Sie die Endungen wieder rückgängig machen.

Durch Caching-Technologien wird nicht jeder Zugriff auf eine Webseite erfasst. Das Caching kann sowohl durch den Browser als auch durch zwischenspeichernde Server erfolgen. Der folgende Code im <HEAD>-Teil eines HTML-Dokuments sollte das Cachen unterbinden:
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache, must-revalidate"> <meta name="Robots" content="Index">

Der einzige Nachteil ist die etwas längere Ladezeit bei einem erneuten Aufruf durch den Besucher.


7. Quelltext-Download

Mit dem Download erkennen Sie den Haftungsausschluß an:

ZUM PHP-QUELLTEXT DOWNLOAD

Gern können Sie auf diese Seite verlinken:


Gefährliche Zusatzstoffe in Lebensmitteln
(Liste)




Zitatesammlung besonders geistreicher und besonders sinnfreier Aussprüche

1000 Zettel meines Schreibtisches
André Chinnow
neu EUR 15,90




Reiseführer Jenseits

Reiseführer
für die letzte Reise

André Chinnow
neu EUR 11,90



Hinter den Kulissen unserer Welt
- Doppelband 1 & 2