Grafikcounter

Alice

Erfahrenes Mitglied
Hallo. :)

Ich habe folgenden Grafikcounter:
PHP:
<?php

$filename = "counter.txt";
$fp       = fopen ($filename, "r");
$user     = fread ($fp, filesize ($filename));
$user     = $user+1;
$fp       = fopen ($filename, "w");

fwrite ($fp, $user);
fclose ($fp);

switch (strlen ($user)) {
case 1:
$user = "00000".$user;
break;
case 2:
$user =  "0000".$user;
break;
case 3:
$user =   "000".$user;
break;
case 4:
$user =    "00".$user;
break;
case 5:
$user =     "0".$user;
break;
}

$user = str_replace ("0" , "<img src=\"0.png\">", $user);
$user = str_replace ("1" , "<img src=\"1.png\">", $user);
$user = str_replace ("2" , "<img src=\"2.png\">", $user);
$user = str_replace ("3" , "<img src=\"3.png\">", $user);
$user = str_replace ("4" , "<img src=\"4.png\">", $user);
$user = str_replace ("5" , "<img src=\"5.png\">", $user);
$user = str_replace ("6" , "<img src=\"6.png\">", $user);
$user = str_replace ("7" , "<img src=\"7.png\">", $user);
$user = str_replace ("8" , "<img src=\"8.png\">", $user);
$user = str_replace ("9" , "<img src=\"9.png\">", $user);

echo $user;

?>

1. Frage:
Wie kann ich am Anfang, zwischen und am Ende Standard Grafiken einbauen?

2. Frage:
Ist es möglich das Ergebniss als eine Grafik auszugeben statt mehrere Grafiken? Wenn ja: Wie?

3. Frage:
Wie kann ich den Counter auf einer HTML-Seite darstellen ohne den Counter zu erhöhen?

Vielen Dank im Vorraus. :)

Edit: Oder hat jemand evtl. einen besseren Grafikcounter für mich? Wichtig wäre nur das ich mit Grafiken arbeiten kann und das man Standard Grafiken an bestimmte Stellen zwischenschalten kann.
 
Zuletzt bearbeitet:
1. Frage:
Wie kann ich am Anfang, zwischen und am Ende Standard Grafiken einbauen?
Komischer Satz aber ich versuche es mal.

PHP:
$anfang = '<img src="bild_am_anfang.png">';
$ende =  '<img src="bild_am_ende.png">';
//und dann bevor du das Bild mit echo ausgibst
$user = $anfang .$user .$ende;
echo $user;
//oder einfach
echo $anfang .$user .$ende;

2. Frage:
Ist es möglich das Ergebniss als eine Grafik auszugeben statt mehrere Grafiken? Wenn ja: Wie?
Dazu findest du hier ein Beispiel. Wobei ich mal behaupte das sich der Aufwand nicht wirklich lohnt.

3. Frage:
Wie kann ich den Counter auf einer HTML-Seite darstellen ohne den Counter zu erhöhen?
Die "Counterdatei" wir ja wohl mit Hilfe von include eingebunden. Dann könntest du einen Wert setzen z.B. $count = FALSE bzw. $count = TRUE und dann in einem IF Block entscheiden ob gezählt werden soll oder eben nicht.

PHP:
if ($count == TRUE) {
    $user = $user + 1;
}

Was du kürzer schreiben könntest wäre die SWITCH Anweisung:

PHP:
$user = str_repeat("0", (6 - strlen($user))) .$user;

Dabei kommt genau das gleiche raus wie bei dir. Nur sind es ein paar Zeilen weniger.
 
Zuletzt bearbeitet:
2. Frage
Hab vor langer Zeit mal ein ein Beispiel geschrieben, wie man Textgrafiken mit erstellen kann.
mMn lohnt sich das auf jeden Fall, da die Textgrafik die Zahlen-/Buchstabenabstände sauber der Schrift anpasst und somit das ganze weniger zusammengesetzt aussieht.

Mal schaeun, wenn ich Lust hab schreib ich demnächst mal ein Beispiel für einen Grafikcounter für mein Wiki und erweitere meine PHP-Textgrafik-Code-Sammlung
 
Ich hätte da eine Frage.

Kann ich den PHP-Code nicht in zwei Teile aufteilen? Und zwar baue ich den ersten Teil in ein PHP-Skript ein und zwar an eine Stelle wo er ausgeführt wird, wenn alles korrekt eingegeben wurde.
Der erste Teile wäre der Teil, der die counter.txt Datei öffnet, ausliest, um eine Stelle erhöht und wieder schliesst.

Der zweite Teil wäre der Teil, der die counter.txt öffnet, ausliest und die Grafik erstellt.

Soviel zur Therorie... :D

Kann mir jemand dabei helfen das praktisch umzusetzen?
 
Das ist der erste Teil der den Zähler erhöht:

PHP:
<?php
$filename = "counter.txt";
$fp       = fopen ($filename, "r");
$user     = fread ($fp, filesize ($filename));
$user     = $user + 1;
$fp       = fopen ($filename, "w");

fwrite ($fp, $user);
fclose ($fp);
?>

Und das ist der zweite Teil. Hier wird nur der Zähler ausgelesen und angezeigt:

PHP:
<?php
$filename = "counter.txt";
$fp       = fopen ($filename, "r");
$user     = fread ($fp, filesize ($filename));
fclose ($fp);

$user = str_repeat("0", (6 - strlen($user))) .$user; 

$user = str_replace ("0" , "<img src=\"0.png\">", $user);
$user = str_replace ("1" , "<img src=\"1.png\">", $user);
$user = str_replace ("2" , "<img src=\"2.png\">", $user);
$user = str_replace ("3" , "<img src=\"3.png\">", $user);
$user = str_replace ("4" , "<img src=\"4.png\">", $user);
$user = str_replace ("5" , "<img src=\"5.png\">", $user);
$user = str_replace ("6" , "<img src=\"6.png\">", $user);
$user = str_replace ("7" , "<img src=\"7.png\">", $user);
$user = str_replace ("8" , "<img src=\"8.png\">", $user);
$user = str_replace ("9" , "<img src=\"9.png\">", $user);

$anfang = '<img src="bild_am_anfang.png">';
$ende =  '<img src="bild_am_ende.png">';
echo $anfang .$user .$ende; 
?>
 
Zurück