Bsp 6 - Verarbeitung von Formularen
Code des HTML-Formulars - "bsp06_form.html":
<html>
<head>
<title>Bsp 6 - Formulare</title>
</head>
<body>
<h1>Formulare</h1>
<form action="bsp06.php" method="post">
<p>Vorname: <input type="text" name="vorname"></p>
<p>Nachname: <input type="text" name="nachname"></p>
<p>Alter: <input type="radio" name="alter" value="<20"><20
<input type="radio" name="alter" value="20-40">20-40
<input type="radio" name="alter" value=">40">>40</p>
<p>Beruf: <select name="beruf">
<option value=""></option>
<option value="Lehrer">Lehrer</option>
<option value="Hausmann">Hausmann</option>
<option value="Polizist">Polizist</option>
<option value="Koch">Koch</option>
</select></p>
<p>Familienstand: <input type="checkbox" name="verheiratet" value="ja">verheiratet</p>
<p>Kommentar: <textarea name="kommentar" rows="5" cols="50"></textarea></p>
<p><input type="submit" value="abschicken"> <input type="reset" value="zurücksetzen"></p>
</form>
</body>
</html>
Code des PHP-Auswertungsskripts - "bsp06.php":
<html>
<head>
<title>Bsp 6 - Formulare</title>
</head>
<body>
<h1>Formulare</h1>
<?php
//Es für die weitere Verarbeitung sinnvoll,
//die übergebenen Werte aus dem Formular in Variablen zu speichern:
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
echo "<p>Hallo $vorname $nachname"!</p>";
echo "<p>Das hast du eingegeben:</p>";
//Mit dem Folgenden kann man während des Programmierens sehr praktisch
//alle eingegebenen Werte anzeigen lassen:
echo "<pre>";
print_r($_POST);
echo "</pre>";
?>
</body>
</html>
Anmerkungen:
Der Aufbau eines HTML-Formulars sieht grundsätzlich so aus:
<form action="datei.php" method="post">
...
</form>
Das Attribut action="datei.php" des Tags <form> gibt
an, an welche Datei die eingegebenen Daten übergeben werden. Als Methode
sollte bei Formularen immer "post" gewählt werden (method="post"),
da dabei die eingegebenen Daten nicht in der URL sichtbar sind (wie das bei
der anderen möglichen Methode "get" der Fall wäre).
Mögliche Eingabefelder sind:
einzeiliges Textfeld:
<input type="text" name="blabla">
Passwortfeld:
<input type="password" name="blabla">
mehrzeiliges Textfeld:
<textarea name="blabla" rows="5" cols="50"></textarea>
Radio-Buttons:
<input type="radio" name="blabla" value="wert1">text1
<input type="radio" name="blabla" value="wert2">text2
Drop-Down-Liste:
<select name="blabla">
<option value="wert1">text1</option>
<option value="wert2">text2</option>
...
</select>
Checkbox:
<input type="checkbox" name="blabla" value="wert>text
Submit-Button:
<input type="submit" value="abschicken">
Reset-Button:
<input type="reset" value="zurücksetzen">
Mehr Informationen über den HTML-Code von Formularen findest du hier oder
hier.
Die eingegebenen Daten werden im assoziativen Array (dazu später) $_POST gespeichert. Als Schlüssel wird immer der Wert des Attributs name="blabla" - also der Name des Formularfelds - aus dem HTML-Formular verwendet. Dann können die eingegebenen Daten jeweils mit $_POST['blabla'] aufgerufen werden. Also zB:
im HTML-Formular:
<p>Vorname: <input type="text" name="vorname"></p>
im PHP-Auswertungsskript:
$vorname = $_POST['vorname'];
echo "<p>Hallo $vorname!</p>";
hier testen
|