[php5.wirlernen.at] [Aufgaben zur Lektion] [Video zur Lektion]

Lektion 50: $_POST - Formular mit Checkbox und Radio - Button auswerten

Du hast bereits verschiedene Formularfelder in PHP eingesetzt - hier unten siehst du Beispiele für den Einsatz von Checkboxes und Radio - Buttons. Bei Radio - Buttons mit dem gleichen Namen kann immer nur EIN Wert gewählt werden während bei Checkboxes MEHRERE ausgewählt werden können.
Je nach Wahl der gewählten Bezeichnung / Name der Checkboxes können 1 oder mehrere Werte ausgewählt werden - der Unterschied wird durch [] gekennzeichnet. Bei Verwendung von [] werden die Werte der Checkboxes in einem Array gespeichert.

Beachte hier unten LINKS das Listing (mit Zeilennummern) und RECHTS die mit diesem PHP - Code erzeugte Abbildung der Webseite: Beachte die Kommentare des Listings zum besseren Verständnis der Funktionsweise von Formularen!
Der Code von formularmitcheckbox.php
(Code OHNE Zeilennummern)
01 | <!DOCTYPE html>
02 | <html>
03 | <head>
04 |     <title>Formular mit Checkbox und Radio - Button auswerten</title>
05 |     <meta http-equiv="content-type" content="text/html; charset=UTF-8">
06 | </head>
07 | <body>
08 |     <form action="formularmitcheckbox.php" method="post">
09 |         Wahl der Anrede:<br>
10 |         <!-- Radio buttons für Wahl der Anrede -->
11 |         <input type="radio" name="Anrede" value="Sie">Sie<br>
12 |         <input type="radio" name="Anrede" value="Du">Du<br>
13 |         Einkaufsliste:<br>
14 |         <!-- Eine checkbox mit mehreren Auswahlmöglichkeiten -->
15 |         <input type="checkbox" name="Einkauf[]" value="Milch"> Milch<br>
16 |         <input type="checkbox" name="Einkauf[]" value="Eier"> Eier<br>
17 |         <input type="checkbox" name="Einkauf[]" value="Brot"> Brot<br>
18 |         <input type="submit" name="absenden" value="Liste absenden">
19 |     </form>
20 | <?php
21 |
//mit isset wird geprüft ob einer Variablen bereits 
22 | //ein Wert zugewiesen wurde
23 |
if (isset($_POST['absenden'])){
24 |     if (isset (
$_POST['Anrede'])){
25 |         if (
$_POST['Anrede']=="Sie"){
26 |             echo 
"Ihre ";
27 |         }
28 |         if (
$_POST['Anrede']=="Du"){
29 |             echo 
"Deine ";
30 |         }
31 |         
//mit der Schleife foreach werden alle Elemente eines Arrays
32 |         //ausgegeben
33 |         
echo "Einkaufsliste: <br>";
34 |         if (isset(
$_POST['Einkauf'])){
35 |             foreach (
$_POST['Einkauf'] as $value) {
36 |                 echo 
$value."<br>";
37 |             }            
38 |         }
39 |                 
40 |     }
41 | }
42 |
?>
43 |
</body>
44 | </html>
Augabenstellung:
1. Erzeuge in einer Datei mit dem Dateiname 050.php ein Listing mit einem Formular welches eine Reihe von Checkboxes mit 4 Baumarten deiner Wahl beinhaltet. Der Benutzer soll mehrere Baumarten auswählen können. Wenn das Formular abgesendet wird sollen die gewählten Baumarten auf der Webseite angezeigt werden!