Bearbeitungszeit: bis Dienstag, 11. Mai 2004, 17:30 Uhr
Ein Webcounter ist eines der einfachsten Beispiele für eine
Internet-Anwendung, die sich nur Server-seitig, und damit nicht in JavaScript realisieren lässt.
Die bequenste Methode, einen Webcounter in eine bereits bestehende Seite einzubauen,
besteht darin, beim Namen der betreffenden Seite die Endung .html in .php
umzuändern und dann an der gewünschten Stelle ein paar Zeilen PHP-Code einzufügen.
Die Aufgabe für das PHP-Programm besteht aus drei Teilen:
echo (damit wird er an den
Client geschickt)Damit die Sache läuft, müssen Sie die Datei, die den Zählerstand enthält,
natürlich zuerst erzeugen, und den Wert 0 hineinschreiben. Wichtig: Sie
müssen sicherstellen, dass der PHP-Interpreter Lese- und Schreibrechte auf die Zählerdatei
hat. Das bedeutet, dass die Datei globale Lese- und Schreibrechte haben muss. Melden Sie sich dazu in
einem Terminal auf dem Server an, gehen Sie mit cd in das Verzeichnis, in dem sich die
Datei befindet und geben Sie ihr mit
chmod a+rw Dateiname
die nötigen Rechte. (Wenn Sie den Befehl genauer verstehen wollen, geben Sie
man chmod
ein).
Teil 2 dieser Aufgabe sollte Ihnen keine Schwierigkeiten mehr bereiten. Für die Teile
1 und 3 benötigen Sie etwas Wissen über das Lesen
und Schreiben von Dateien mit PHP. Was Sie ausserdem
wissen müssen, ist, dass der fgets-Befehl Ihnen den Inhalt der Zeile, den er liest, als
String (Zeichenkette) zurückgibt. Um einen String in eine Ganzzahl umzuformen, benutzen Sie eine Zeile
wie die Folgende:
$zahl = (int)$zeichenkette;
Vielleicht bekommen Sie dabei auch das Bedürfnis, etwas über
while()-Schleifen oder
allgemein über Schleifen nachzulesen.
Dokumentiert wird die Aufgabe wie üblich.
Schreiben Sie ein PHP-Programm, das aufgrund der Daten eines Eingabefeldes (horizontal von ... bis ...,
vertikal von ... bis ...) eine Multiplikationstabelle für ganze Zahlen erstellt. Was Sie dazu brauchen,
sind zwei ineinander geschachtelte for()-Schleifen, deren Inneres um die Ausgabe der
HTML-Tabellenbefehle und der Produkte bemüht ist.
Informationen über for()-Schleifen finden Sie hier.
Dokumentiert wird die Aufgabe wie üblich.
Erweitern Sie Ihr PHP-Zähler-Programm so, dass es HTML-Code ausgibt, der
bewirkt, dass der Zähler durch eine Reihe von GIF- oder PNG-Grafiken namens
0.gif, 1.gif, ..., 9.gif dargestellt wird
(für PNG-Grafiken wäre die Endung natürlich .png).
Zu diesem Zweck müssen Sie die einzelnen Ziffern des Zählers ermitteln.
Wenn der Zählerstand in der Variablen $zaehler gespeichert ist,
erhalten Sie die erste Ziffer als $zaehler{0}, die zweite als
$zaehler{1} usw., allgemein die i+1-te Ziffer als
$zaehler{$i}. Sie können also z.B. schreiben:
$gifdateiname = $ziffer{$i}.".gif";
(oder .png statt .gif) und erhalten so den Namen der Datei, welche die richtige Grafik für die
i+1-te Ziffer enthält.
Die Anzahl Ziffern ermitteln Sie mit der Funktion
strlen().
Um alle Ziffern abzuarbeiten, benutzen Sie eine
for(;;)-Schleife..
Die benötigten Ziffergrafiken finden Sie mit Google und den Stichworten counter, digits und download.
Dokumentieren Sie das Programm unabhängig von Aufgabe 1.