Zählen der Seitenaufrufe
hueddengammler
- php
Ich habe ein Problem....
wahrscheinlich ist es simple aber gibt mir mal nen denk anstoss.
Ich will einfach nur ein Zähler bauen der halt Zählt wie oft die Seite aufgerufen wird.... wie mach ich das???
Ich habe ein Problem....
wahrscheinlich ist es simple aber gibt mir mal nen denk anstoss.Ich will einfach nur ein Zähler bauen der halt Zählt wie oft die Seite aufgerufen wird.... wie mach ich das???
hi,
meinst du sowas:?
http://i-netlab.de/cgi-bin/index.cgi?charts=1
Also bei mir haben die Seiten welche per CGI aufgerufen werden Nummern, bspw. 40.12
Diese Nummer ist der Key in einem hash. Der Value ist einmal die Zahl vom Aufruf und der Timestamp (\0 als Trennzeichen). Dieser hash ist schließlich in einer Berkeley DB gespeichert, daraus wiederum baut das CGI die Charts...
Viele Grüße, rolf
Hi!
Ich will einfach nur ein Zähler bauen der halt Zählt wie oft die Seite aufgerufen wird.... wie mach ich das???
Das ist ganz einfach. Irgendwo musst Du die Anzahl der Besuche ja speichern. Hierzu bietet sich ja eine einfache Textdatei an. Das heißt Du öffnest bei jedem Aufruf eine Datei, liest den Counter(Zahl) aus, rechnest "+1" und schreibst das Ergebnis wieder in die Datei. Ich würde es in etwas so machen:
<?php
$file='counter.txt';
// ggfs. Datei erzeugen
touch($file);
// Counter lesen
$fp = fopen ($file, 'r');
$count = fgets($fp) + 1;
fclose ($fp);
// Counter schreiben
$fp = fopen ($file, 'w');
fputs($fp, $count);
fclose ($fp);
echo $count;
?>
Leider kann man die Datei nicht derart zum lesen und schreiben öffnen, dass man erst den Inhalt lesen kann, und danach den alten Inhalt überschreiben kann(wüßte zumindest nicht wie).
Daher müßte man die Datei eigentlich zwischenduch für fremde Zugriffe sperren, naja aber wenn es nur ein einfacher Counter ist...
touche() verwendet man (bzw. kann man dazu mißbrauchen ;-)) um die Datei zu erzeugen wenn diese noch nicht existiert, da man sonst die Datei nicht zum lesen öffenen kann.
Naja, wie nützlich so ein Counter ist werden Dir sicher noch andere im Verlaufe dieses Threads schreiben ;-)
Grüße
Andreas
danke denke probiere die erste möglichkeit aus......
Nochmals danke...
mfg
hueddengammler