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

Lektion 42: Mit POST - Formularen Werte übergeben - Vor- und Nachteile

Mit Hilfe von Formularen können Werte eingeben und an Webseiten übergeben werden. Die einzelnen Formularfelder haben EINDEUTIGE Bezeichnungen um diese später auswerten zu können.
Es gibt bei Formularen entweder die 2 post und get - Übertragungsmöglichkeit:
* post: Es können beliebig lange Inhalte übertragen werden. Da die Inhalte NICHT an die URL übergeben werden sind diese bei der Übertragung besser geschützt.
* get: Da die Inhalte bei der Übertragung an die URL angehängt werden können nur BEGRENZT lange Inhalte übermittelt werden. Diese Übertragungsart gilt als vergleichsweise unsicher.

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 formularpost01.php
(Code OHNE Zeilennummern)
01 | <!DOCTYPE html>
02 | <html>
03 |     <head>
04 |         <title>POST - Formular - Beispiel</title>
05 |         <meta http-equiv="content-type" content="text/html; charset=UTF-8">
06 |     </head>
07 |     <body>
08 | <?php 
09 |
/*Mit isset() wird überprüft ob einer Variablen ein Wert zugewiesen wurde
10 | $_POST - Variablen enthalten die Werte der gleichnamigen Formularfelder
11 | - so enthält $_POST['name'] den Wert des an die Seite übergebenen Formular-
12 | feldes <input type="text" name="name" />
13 | */
14 |     
if ((isset($_POST["name"]))&&(isset($_POST["adresse"]))){
15 |        echo 
"Dein Name lautet ".$_POST["name"]."<br>";
16 |        echo 
"Du wohnst in ".$_POST["adresse"].".<br>"
17 |     }
18 |  
?>
19 |
<!-- Mit action wird festgelegt an welche Webseite die Werte des Formulars
20 | übergeben werden.
21 | Mit method wird festgelegt welche Methode der Übertragung gewählt wird -->
22 |         <form action="formularpost01.php" method="post">
23 | <!-- Mit input type wird die Art des Formularfeldes festgelegt  
24 | Mit name wird die Bezeichnung des Formularfeldes festgelegt.-->
25 |             <p>Dein Name: <input type="text" name="name" /></p>
26 |             <p>Deine Adresse: <input type="text" name="adresse" /></p>
27 | <!-- Mit dem Formularfeld vom type submit werden die in das Formular
28 | eingegebenen Daten an eine Webseite übergeben -->
29 |             <p><input type="submit" value="OK"/></p>
30 |         </form>
31 |     </body>
32 | </html>
Augabenstellung:
1. Erzeuge in einer Datei mit dem Dateiname 042.php ein Listing bei dem du ein Formular vom Typ Post erzeugst welches mindestens Formularfelder für Geburtsdatum und das aktuelle Jahr beinhaltet! Wenn dieses Formular abgesendet wurde sollen mit einer Berechung das Lebensalter auf der Seite ausgegeben werden! Es soll mit einem PHP - Befehl festgestellt werden ob tatsächlich Werte über das Formular übergeben werden (Stichwort isset)!