Informatik :: PHP + MySQL :: Formulare in PHP
[Einfache Formulare] | [Sich selbst aufrufende Formulare] | Aufgaben |
[1] | [2] | [3] |
Die Formulardatei (eine beliebige HTML Datei, die erst mal noch gar nichts mit PHP zu tun hat) enthalte:
<form action="meldedich.php" method="post"> <input name="wort"> <input type="submit" value="senden"> </form>
Man sieht sofort:
Beim Klicken auf den Submit - Button wird die Datei meldedich.php aufgerufen. Dieser wird dann der Wert des Formularelementes mit dem Namen "wort" übergeben.
Die Datei meldedich.php könnte dann etwa so aussehen:
<? echo "Sie haben gerade $_POST[wort] eingegeben."; /?>
Erlärung:
Der Text, der in das Formularfeld mit dem Namen wort auf der Clientseite eingegeben und anschließend an die Datei meldedich.php, die auf dem entfernten Webserver geschickt wurde, ist dort an die PHP-Variable $_POST["wort"] übergeben worden und wird nun mit dem Echo-Befehl an den Clienten zurückgeschickt und im Browserfenster ausgegeben.
Prinzip der dynamischen HTML-Seitenerzeugung:
Individuelle Daten werden auf der Clientseite in eine statische HTML-Seite in Formularfeldern mit konkreten Bezeichnern (Namen) eingegeben und per Submitbutton an die PHP-Datei auf dem entfernten Webserver gesendet.
Wichtig dabei ist, dass innerhalb des form-Tags action="PHP-Datei" und method="post" notiert ist.
Auf dem Webserver angekommen, werden alle übermittelten Formulardaten automatisch in ein so genanntes assoziatives Array ausgelesen. Dieses assoziative Array hat immer die Form $_POST["Formulardatenbezeichner"].
Zum Schluss wird auf dem Server mit Hilfe des echo-Befehles innerhalb der PHP-Datei HTML-Code generiert, der wieder an den Clienten (Browser) gesendet wird und dort eine entsprechende (dynamische) HTML-Seite erzeugt.
Hinweise:
Auch hier passiert fast das gleiche: Aber diesmal wird beim Absenden die gleiche Datei wieder selbst aufgerufen (durch die Variable $PHP_SELF wird der Dateiname ermittelt). Man kann natürlich auch gleich den Namen angeben.
<!--------Formular---------------------------------------> <form action="<? $PHP_SELF; ?>" method="post"> <input name="wort"> <input type="submit" value="senden"> </form> //--------Auswertung---------------------------------------- <? if (isset($_POST["wort"])) { echo "Sie haben gerade $_POST[wort] eingegeben."; } ?>
Im zweiten Teil der gleichen Datei erfolgt dann die Auswertung der Variablen von PHP aus. Und nur dann, wenn sie einen Wert enthält, - wird mit if (isset($_POST["wort"])) geprüft - kommt es zu einer Ausgabe des Satzes. Diese Abfrage ist nötig, weil ja beim ersten Aufruf der Datei die Variable noch keinen Wert enthält.
Aufgabe 1
Aufgabe 2
Das gleiche Poblem wie in Aufgabe 1 soll jetzt mit einem sich selbst aufrufenden Formular gelöst werden.
Erstelle dazu die PHP-Datei form2.php, die ein sich selbst aufrufendes Formular enthält und folgendes realisiert:
Aufgabe 3
Mittels eines Formulars sollen folgende Daten eines Geschäftskunden erfasst werden:
Bei der Erfassung der Daten ist dafür Sorge zu tragen, dass alle mit * gekennzeichneten Felder ausgefüllt werden müssen.
Nach dem erstmaligen Senden der Daten soll der Kunde die Möglichkeit haben, die übermittelten Daten zu korrigieren und endgültig zu senden.
Die gesendeten Daten sollen in Textform ausgegeben werden.
Hinweis:
Für das Formular kannst du eine Kopie von der Lösung der Aufgabe zum Thema "Interaktive Formulare mit JavaScript" verwenden.