[php.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 lang="de">
03 |
04 | <head>
05 |     <title>Formular mit Checkbox und Radio - Button auswerten</title>
06 |     <meta charset="UTF-8">
07 | </head>
08 |
09 | <body>
10 |     <form action="formularmitcheckbox.php" method="post">
11 |         Wahl der Anrede:<br>
12 |         <!-- Radio buttons für Wahl der Anrede -->
13 |         <input type="radio" name="Anrede" value="Sie">Sie<br>
14 |         <input type="radio" name="Anrede" value="Du">Du<br>
15 |         Einkaufsliste:<br>
16 |         <!-- Eine checkbox mit mehreren Auswahlmöglichkeiten -->
17 |         <input type="checkbox" name="Einkauf[]" value="Milch"> Milch<br>
18 |         <input type="checkbox" name="Einkauf[]" value="Eier"> Eier<br>
19 |         <input type="checkbox" name="Einkauf[]" value="Brot"> Brot<br>
20 |         <input type="submit" name="absenden" value="Liste absenden">
21 |     </form>
22 |     <?php
23 |
//mit isset wird geprüft ob einer Variablen bereits 
24 | //ein Wert zugewiesen wurde
25 |
if (isset($_POST['absenden'])){
26 |     if (isset (
$_POST['Anrede'])){
27 |         if (
$_POST['Anrede']=="Sie"){
28 |             echo 
"Ihre ";
29 |         }
30 |         if (
$_POST['Anrede']=="Du"){
31 |             echo 
"Deine ";
32 |         }
33 |         
//mit der Schleife foreach werden alle Elemente eines Arrays
34 |         //ausgegeben
35 |         
echo "Einkaufsliste: <br>";
36 |         if (isset(
$_POST['Einkauf'])){
37 |             foreach (
$_POST['Einkauf'] as $value) {
38 |                 echo 
$value."<br>";
39 |             }            
40 |         }
41 |                 
42 |     }
43 | }
44 |
?>
45 |
</body>
46 |
47 | </html>
Augabenstellung:
1. Erzeuge in einer Datei mit dem Dateinamen 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!