PHP-Grundlagen: Formulare und PHP Teil 3

Ziel: Pflichtfeld prüfen

Jetzt ergänzen wir das Formular im dritten Teil des Schritt-für-Schritt-Beispiels mit einem zweiten Feld, bei dem es aber egal ist, ob es ausgefüllt wird oder nicht. Damit simulieren wir Pflichtfelder und Felder, die keine Pflichtfelder sind. Das Feld name bleibt aber Pflichtfeld, wie im Teil 2 dieses Beispieles.

Formular als Vorlage

<?php
if($abgeschickt == 1) {
if($fehler == 0) {
echo "<p>Danke für Ihren Eintrag.</p><p>Ihr Vorname: $vorname<br />Ihr Nachname: $name</p>";
} else {
echo "<p>Sie haben keinen Nachnamen eingegeben!</p>";
}

} else {
echo "<form method='POST' action='".$PHP_SELF."'>";
echo "Vorname: <input type='text' name='vorname' value='".$vorname."' /><br />";
echo "Nachname: <input type='text' name='name' value='".$name."' /><br />";
echo "<input type='submit' value='Abschicken' />";
echo "</form>";
}
?>

Das Formular ist fast ident mit der Ausgabe aus Teil 2, aber es wurde mit vorname ein zweites Feld eingefügt.

Auswertung per PHP

<?php
if($_SERVER["REQUEST_METHOD"] == "POST") {
$vorname = $_POST["vorname"];
$name = $_POST["name"];
// Fehlerprüfung
$fehler = 0;
if($name == "") {
$fehler = 1;
}
if($fehler == 0) {
$abgeschickt = 1;
}
}
?>

Erläuterungen des Beispiels

Das Formular bekommt also langsam Sinn, denn neben dem Nachnamen (Namen, Familiennamen) ist nun auch der Vorname gefragt. Damit die Besucherinnen und Besucher wissen, was sie eingeben sollen, werden die Felder beschriftet. Beachten Sie dabei bitte die Neuerung der Textfelder und die Schreibweise beim Parameter value. Hier wird nämlich Vorsorge getroffen, dass bereits eingegebene Werte angezeigt werden, sollte es Probleme gegeben haben.

Das Spiel in diesem Beispiel läuft nun so, dass man beide Felder ausfüllen kann, aber nicht muss. Jedoch muss das Feld name (der Nachname) Daten enthalten. Der Vorname kann auch leer bleiben. Es gibt nun wieder verschiedene Szenarien:

a) Der Besucher kommt das erste Mal und kann das leere Formular nutzen

b) Der Besucher hat den Vornamen, nicht aber den Nachnamen eingetragen und das Formular abgeschickt. Dann bekommt er eine Fehlermeldung, dass der Nachname nicht übermittelt wurde und - jetzt neu - sieht seinen eingegebenen Vornamen im wieder angezeigten Formular - er spart sich damit die neuerliche Eingabe.

c) Der Besucher hat entweder beide Namen oder den Nachnamen eingegeben. In beiden Fällen ist die Bedingung erfüllt und er bekommt die Bestätigung. Das Formular wird nicht mehr angezeigt.

Neu und wichtig ist bei diesem Formular, dass man den Vornamen nicht nochmals eingeben muss. Denken Sie an ein langes Formular mit vielen Feldern - dort ist man dankbar, wenn man sich die doppelte Arbeit erspart. Auch neu ist, dass nicht jedes Feld abgefragt werden muss. Der Vorname könnte auch leer bleiben - denken Sie an Felder, bei denen der Besucher gar nichts ausfüllen kann, weil sie nicht zutreffen.

Diesen Artikel teilen

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel