(letzte Änderung an dieser Seite: 28.12.2022)
(letzte Synchronisation der PDF-Präsentation: 04.12.2020)
Falls keine PDF-Präsentation zu sehen ist, klicken Sie zum Download hier: Direktdownload PDF-Präsentation
Das im Video und unten verwendete Beispielformular finden Sie hier als Download: 200-phpformular-EIS-beispiel-index.php.zip
Beispiel für Formular:
HTML-Code<form action="ergebnis.php" method="post"> <div> <label for="idSorte">Sorte?</label> <input type="text" id="idSorte" name="eissorte" placeholder="Eissorte eingeben"> </div> <div> <input type="radio" id="idBecher" value="Becher" name="auswahl"> <label for="idBecher">Becher</label> <br> <input type="radio" id="idWaffel" value="Waffel" name="auswahl"> <label for="idWaffel">Waffel</label> </div> <div> <input type="submit" value="Absenden" name="submitknopf" id="idSubmit"> </div> </form>
method = "get"
– Formulardaten werden an URL angehängt
method = "post"
– Formulardaten werden direkt übertragen
Übertragen wird ein assoziatives Array, wobei das Attribut name
als Schlüssel verwendet wird:
$_POST['eissorte']
(enthält den Wert, den der User ins Textfeld eingegeben habt, bspw. “Erdbeer”)
$_GET['eissorte']
(dito)
D.h.: Das Attribut ‘name’ gibt den Schlüssel an, das Attribut ‘value’ den Wert – damit enthält $_POST['name']
den Wert value
.
Auf der ergebnis.php können diese Variablen verwendet werden, z.B.
PHP-Code<?php echo "Dein Lieblingseis ist $_POST[eissorte]!"; ?>
bzw.
PHP-Code<?php $eis = $_POST['eissorte']; // hier könnte auch $_POST[eissorte]; stehen echo "Dein Lieblingseis ist $eis!"; ?>
Anführungszeichen um den Schlüssel funktionieren nur dann, wenn die Variable außerhalb von Anführungszeichen verwendet wird (im ersten Beispiel funktioniert $_POST['Lieblingseis']
also nicht.
…funktioniert analog zum bisher Beschriebenen. Wir benutzen immer das name-Attribut des Formularelements:
PHP-Code<?php echo "Sie essen gerne $_POST[eissorte] aus der/dem $_POST[auswahl]." ?>
Wir verwenden vorläufig immer POST, da wir u.U. längere Inhalte von textarea-Feldern übertragen wollen oder Passwörter verwenden. Allerdings hat auch GET Vorteile: Fehler sind leichter zu erkennen, da in der URL der gesamte Formularinhalt übermittelt wird.
Die Verwendung von GET
hat Sicherheitsimplikationen, wenn bspw. über das Formular Werte übertragen werden, die nicht als Referer in den Logs auftauchen sollen - wenn z.B. ein Passwort über das Formular übertragen wird.
Übrigens: File-Transfers können nur per POST durchgeführt werden.