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

Lektion 43: Mit GET - 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 und beachte beim Formular auf die URL der Webseite NACHDEM die Daten abgesendet wurden - das Formular öffnet sich übrigens durch die Angabe von target="_blank" in einem Tab ...!
Der Code von formularget01.php
(Code OHNE Zeilennummern)
01 | <!DOCTYPE html>
02 | <html lang="de">
03 |
04 | <head>
05 |     <title>GET - Formular - Beispiel</title>
06 |     <meta charset="UTF-8">
07 | </head>
08 |
09 | <body>
10 |     <?php 
11 |
/*Mit isset() wird überprüft ob einer Variablen ein Wert zugewiesen wurde
12 | $_GET - Variablen enthalten die Werte der gleichnamigen Formularfelder
13 | - so enthält $_GET['name'] den Wert des an die Seite übergebenen Formular-
14 | feldes <input type="text" name="name" />
15 | */
16 |     
if ((isset($_GET["name"]))&&(isset($_GET["adresse"]))){
17 |        echo 
"Dein Name lautet ".$_GET["name"]."<br>";
18 |        echo 
"Du wohnst in ".$_GET["adresse"].".<br>"
19 |     }
20 |  
?>
21 |
    <!-- Mit action wird festgelegt an welche Webseite die Werte des Formulars
22 | übergeben werden.
23 | Mit method wird festgelegt welche Methode der Übertragung gewählt wird -->
24 |     <form action="formularget01.php" method="get" target="_blank">
25 |         <!-- Mit input type wird die Art des Formularfeldes festgelegt  
26 | Mit name wird die Bezeichnung des Formularfeldes festgelegt.-->
27 |         <p>Dein Name: <input type="text" name="name" /></p>
28 |         <p>Deine Adresse: <input type="text" name="adresse" /></p>
29 |         <!-- Mit dem Formularfeld vom type submit werden die in das Formular
30 | eingegebenen Daten an eine Webseite übergeben -->
31 |         <p><input type="submit" value="OK" /></p>
32 |     </form>
33 | </body>
34 |
35 | </html>
Augabenstellung:
1. Erzeuge in einer Datei mit dem Dateinamen 043.php ein Listing bei dem du ein Formular vom Typ GET erzeugst welches mindestens Formularfelder für den aktuellen Preis eines Liters Milch und einer Literanzahl beinhaltet! Wenn dieses Formular abgesendet wurde sollen mit einer Berechung der Preis für die eingegebene Milchmenge auf der Webseite ausgegeben werden! Es soll mit einem PHP - Befehl festgestellt werden ob tatsächlich Werte über das Formular übergeben werden (Stichwort isset)!