voriges Beispiel bruckbauer.at nächstes Beispiel

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

 

voriges Beispiel bruckbauer.at nächstes Beispiel