| |
| * Link führt ins Internet |
|
| |
Das erforderliche Skript zur Umsetzung des Counters stellt sich, wie folgt dar:
<?php
// Simple Counter v1.0
// Für die korrekte Funktionsweise des Counters ist darauf zu
// achten, daß die entsprechenden Schreibrechte auf dem
// Webserver gesetzt sind.
// Counterdateiname
$datei="counter.txt";
// Anzahl der führenden Nullen
$stellen = 5;
if(file_exists($datei)){
// Falls die Datei existiert, wird sie ausgelesen und
// der dort enthaltene Wert um Eins erhöht.
$fp=fopen($datei,"r+");
$zahl=fgets($fp,$stellen);
$zahl++;
rewind($fp);
flock($fp,2);
fputs($fp,$zahl,$stellen);
flock($fp,3);
fclose($fp);
}else{
// Die Datei counter.txt existiert nicht, sie wird
// neu angelegt und mit dem Wert 1 gefüllt.
$fp=fopen($datei,"w");
$zahl="1";
fputs($fp,$zahl,$stellen);
fclose($fp);
}
// Diese Funktion sorgt für die Formatierung
// in diesem Fall für die führenden Nullen
$zahl=sprintf("%0".$stellen."d",$zahl);
?>
|
Wir empfehlen Ihnen dieses Skript in eine Datei Namens counter.php abzuspeichern. Durch die if-Anweisung wird entweder eine vorhandene Textdatei counter.txt ausgelesen und deren Wert anschliessend um eins erhöht oder eine neue Textdatei counter.txt angelegt und der Wert mit 1 initialisiert. Die Variable $fp enthält den Dateizeiger (engl. FilePointer), welcher auf die entsprechende Datei verweist. Die Funktion rewind() sorgt dafür das der Dateizeiger wieder an die Anfangsposition zurückgesetzt wird, um anschliessend mit der Funktion fputs() den in der Variablen $zahl enthalten Wert zu verwenden und den bisherigen Inhalt der Datei zu überschreiben. Mit Hilfe der Funktion flock() wird sicher gestellt, dass die Datei während des Schreibvorgangs verriegelt wird. Dies ist notwendig um beispielsweise einen simultanen Zugriff auf die Datei zu verhindern, durch diesen könnte die Datei möglicherweise zerstört werden.
Im letzten Schritt wird der Inhalt der Variablen $zahl formatiert und zwar, so dass eine festgelegt Zahl von führenden Nullen hinzugefügt wird. Die Funktion sprintf() dient hierbei der formatierten Ausgabe von Zeichenketten. Der Aufruf des Counters kann anschliessend aus jedem beliebigen PHP-Skript Ihrer Website erfolgen und zwar, wie folgt:
<?php
include("counter.php");
echo $zahl;
?>
|
Ausgabe
Natürlich steht es Ihnen frei die Ausgabe des Counters mit Hilfe von HTML-Tags zu formatieren.
Beispiel
<html>
<head>
<title>Simple Counter</title>
</head>
<body>
<font face=Arial color=blue size=5>Besucher:</font>
<?php
include("counter.php");
echo "<font face=Arial color=blue size=5>$zahl</font>";
?>
</body>
</html>
|
|
|
|
|
|
|
|