====== Dateien ====== Daten, die später wieder gebraucht werden, können in Dateien geschrieben werden. So können Daten für einen Chat in einer solchen Datei gespeichert sein. Sobald die Datei aber im Verzeichnis des Webservers gespeichert ist, kann sie von jedem abgerufen werden, indem man die Adresse zur Datei eingibt. Ich will hier das Beispiel eines kleinen Chat-Clients erklären. ===== Die Grundlagen ===== Wir erstellen eine HTML Datei mit einem Formular zur Dateneingabe und einem
Feld. Die Datei chat.txt, die den gesamten Inhalt des Chats enthält, wird in regelmäßig Abständen abgefragt, und in das
Feld mittels Javascript gesetzt. Die PHP Datei, die von dem Formular auf der Seite angesprochen wird, muss den eingegebenen Text verarbeiten (und evtl. den Nutzer, was ich hier nicht bespreche) und in die Datei chat.txt schreiben. ===== Die HTML Datei ===== Die Javascript Funktion zum Auslesen der Datei ist [[ajax:first_steps|hier]] erklärt. Ich gehe davon aus, dass die Funktion in der Datei ajax.js liegt. kleiner Chat-Client
===== Die PHP Datei ===== Was muss jetzt in der inputchat.php passieren? Die eingabedaten müssen von $_POST eingelesen werden, die Datei muss geöffnet, die bisherigen Daten eingelesen, die Daten aneinandergesetzt und in die Datei geschrieben und die Datei geschlossen werden. \n".$dateiText; # Den Inhalt in die Datei schreiben. fwrite($file,$newText); # Die Datei wieder schließen fclose($file); # Den Nutzer zurück zur chat.htm leiten header("location:chat.htm"); die(); }; ?> Wenn der Nutzer jetzt also von der inputchat.php wieder zur chat.htm zurückgeleitet wurde, wird er in dem
Bereich seinen Beitrag sehen. Neue Einträge werden mit diesem Code immer am Anfang angehängt. Wer das ganze noch verschönern will, kann in die chat.txt den Eingabetext formatiert eingeben lassen. ===== fopen ===== fopen() hat mehrere Parameter. fopen(string $filename, string $mode) reicht für die normalen Probleme aus. $filename wird durch den Dateinamen ersetzt (relativ oder absolut). $mode ist der Modus in dem die Datei geöffnet wird. Folgende Tabelle der Modi ist im PHP Handbuch angegeben: ^Modus^Bedeutung^ |r|Öffnet die Datei nur zum Lesen und positioniert den Dateizeiger auf den Anfang der Datei. | |r+|Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei. | |w|Öffnet die Datei nur zum Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert wird versucht sie anzulegen. | |w+|Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert, wird versucht sie anzulegen. | |a|Öffnet die Datei nur zum Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen. | |a+|Öffnet die Datei zum Lesen und Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen. | Der Befehl [[c:lib:stdio:fopen|fopen]] der Programmiersprache C ist äquivalent zu dem PHP-Befehl.