Hi, ich weis beitrag schon fast n Jahr alt, mach das ja normalerweise auch nicht. Doch da hier alle so gesagt haben das das nicht geht, mit dem Counter als grafik, dachte ich ich belehre euch eines besseren =D.
Jetzt hoffe ich auch das es geht, sonnst isses peinlich.
Nun, erstmal den Code:
- Code: Alles auswählen
<?php
header("Content-type:image/jpg");
error_reporting(E_ALL|E_STRICT);
$datei = fopen("count.txt", "r+");
$counterstand = fgets($datei, 10);
if($counterstand == "")
{
$counterstand = 0;
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
$bild = imagecreatetruecolor(90,25);
$weiss = imagecolorallocate($bild,250,255,255);
$black = imagecolorallocate($bild,0,0,0);
$blue = imagecolorallocate($bild,0,0,255);
$zahl = 1;
imagestring($bild,5,10,5,$counterstand,$weiss);
imagejpeg($bild);
imagedestroy($bild);
?>
So, was hier passiert.
Man erstellt eine count.txt (rechte auf 0666 zum schreiben)
Das skript liest nun die zahl aus der count.txt aus erhöt sie um 1.
Wie es bei einem normalen counter auch ist. Dann wird daraus eine Grafik erstellt.
Durch den header oben, wird gesagt das die datei, nennen wir sie bild.php eigentlich ein jpg ist, und so wird sie vom browser auch behandelt.
Wenn man die datei also aufruft wird ein Bild angezeigt.
Jedesmal wenn die seite aufgerufen wird, erhöt es den counter um 1, und schreibt in dem bild die neue zahl.
Leider gibt es hier wohl das problem, das hier die links überprüft werden ob am ende .jpg .gif usw. steht. So das ihr es euch nur über den link anschauen könnt. Muss aber nicht überall so sein. Bzw, als <img tag funktioniert es auf jeden fall.
edit** Ich habe nun doch eine lösung gefunden, mit mod_rewrite diese bilder anzuzeigen.
Den Code hierzu:
-----------------
DirectoryIndex index.php
RewriteEngine On
RewriteRule ^(.*)_(.*).jpg$ $1.php
-------------------
http://twg-klick.net/kempf/bild.php <-- link zum bild.
Probleme hierbei kann es nur geben, wenn der Browser die bilder speichert, dann kann es sein das immer das gleiche bild angezeigt wird. Aber standardmäsig wird die grafik immer neu geladen.
Der code ist so zwar nicht schön, und ist auch keine sperre eingebaut so das der Counter bei jedem aufruf hoch geht.
Aber wenn man möchte kann man das ganze optisch und technisch verbessern.
Und tschuldigung für das wiederhochholen.
Greetz TimTim