Formulare und PHP

fopen-Befehl r+ auf “a” - dies bedeutet, die Datei wird zum Schreiben geöffnet und der File-Pointer ist am Ende der Datei, (a steht für append - also anfügen).
Wenn wir nun etwas in die Datei schreiben mit fputs, wird es ans Ende der Datei geschrieben.
Daten, die bereits vorher stehen (also “vor” dem File-Pointer (“örtlich” also am Anfang der Datei), werden dadurch nicht beeinträchtig – bleiben somit erhalten. Wie beim Tagebuch, da setzt der Füller auch nach dem letzten Eintrag an).

Nachdem also der “Senden” Knopf der erstellten Form gedrückt wird, wird die Datei ”save_me.php” aufgerufen, da diese als “action” angegeben ist. Die aufgerufene Datei save_me.php bekommt die verwendeten Form-Daten übermittelt, die dann über $_POST... verwendet werden können.
In der aufgerufenen php-Datei kann man nun über $_POST['dieNachricht'] auf die eingegebenen Daten zugreifen.

Mit if ($_POST['dieNachricht'] !="") wird abgefragt, ob überhautp etwas eingegeben wurde, ansonsten ist ja nichts zu speichern und die Nachricht leer, das drückt sich durch 2 Anführungszeichen "" nebeneinander aus (zwischen denen somit kein Inhalt Platz hat).

Man kann die Zeile wie folgt lesen: Wenn von der HTML-Form eine Nachricht in der Variablen $_POST['dieNachricht'] übergeben wurde die ungleich (!=) einer “leeren Nachricht” ("")ist, dann speichere sie, ansonsten gib die Fehlermeldung: echo "Sie haben leider keine Nachricht eingegeben!"; aus.
Das Speichern geht äquivalent zur Counter-Speicherung, nur eben am Ende der Datei;

fputs($fp,"\n"); gibt noch ein “NewLine” Zeichen aus, damit ein Zeilenumbruch entsteht, wenn man die Datei nachrichten.txt mit WordPad öffnet.
Wieder ist zu achten, dass die Datei nachrichten.txt am Server Schreibrechte haben muss;.

Tipp: Um nicht von GET oder POST abhängig zu sein, kann man $_REQUEST['dieNachricht'] verwenden, da $_REQUEST bei POST und GET funktioniert.