Webdesign Würzburg

PHP-Lektion 2.1

Wir arbeiten nun mal mit einem HTML Formular. Für Anfänger kann das etwas verwirrend sein, jedoch ist es das eigentlich gar nicht. Zuerst schauen wir uns ein HTML-Formular an.

<form method="get" action="empfaenger.php">

<input type="text" name="wert" />

<input type="submit" value="uebergeben" />

</form>

Schauen wir uns an was wir da haben. Zuerst definiere ich ein "form"-Tag. Dies hat auf jeden Fall die Attribute "method" und "action".
Die Method gibt an wie ich die Daten übertragen möchte. Hier kann nur "get" oder "post" verwendet werden. Hier verwenden wir "get" um Daten aus einer Datei in die nächste zu übergeben. In der nächsten Lektion machen wir das gleiche mit "post" und sehen uns dann die Unterschiede an. Im "action"-Attribut geben wir an, an welche Datei die Daten übergeben werden sollen. Im "input"-Tag brauchen wir das Attribut "type" und "name". In "type" gebe ich an um was für Daten es sich handelt (in unserem Fall Text) und bei "name" gebe ich an wo ich die Daten abgreifen kann. Im zweiten "input"-Tag gebe ich "type" den Wert "submit", dies ist der Button der das Formular abschickt und mit "value" gebe ich an wie der Button beschriftet sein soll (uebergeben). Dies speichern wir nun in einer Datei, diese könnte auch eine ".html" Datei sein, da dies nichts mit PHP zu tun hat. Ich würde vorschlagen wir nehmen als Dateiname "sender.php".

Wo wir gleich dabei sind erstellen wir die "empfaenger.php" die wir in der Form angeben. In dieser Datei greifen wir nun einfach den Wert aus der Form ab und geben ihn aus. In die "empfaenger.php" schreiben wir also:

<?php

echo $_GET["wert"];

?>

Das war schon die ganze Zauberei. Wir können die Datei nun speichern und rufen im Browser die "sender.php" auf, geben einen Wert in das Textfeld und klicken auf "uebergeben". Wir sehen als Ergebnis die "empfaenger.php" in der der eingegebene Wert mit echo ausgegeben wird. Wenn Sie den Text eigegeben haben und sehen nun die "empfaenger.php" schauen Sie sich oben mal dem link in Ihren Browser an:

empfaenger.php?wert=HierMeinText

Ich kann also erkennen das mit der Methode "get" (aus der Form) mein "wert" (input Tag) über die URL übergeben wird. Dies wird oft verwendet um zum Beispiel über eine Website zu navigieren oder Daten von einer auf die nächte PHP-Datei zu übertragen. Gleiches kann ich natürlich auch mit einem selbst definierten "a"-Tag machen. Erweitern wir unsere "sender.php" also um folgendes:

 

<form method="get" action="empfaenger.php">

<input type="text" name="wert" />

<input type="submit" value="uebergeben" />

</form>

<a href="empfaenger.php?wert=Wert aus dem Tag a">klick hier!</a>

 Klicken wir nun auf den link mit dem Namen "klick hier!" kommen wir ebenfalls auf die "empfaenger.php" und da wir auch hier "wert" definiert haben, sehen wir den Text: "Wert aus dem Tag a"

Ich denke die Funktionsweise sollte soweit klar sein.

Nachteile von der Methode "get":

- begrenzte Zeichenanzahl, die URL darf maximal 2048 Zeichen lang sein
- kann leicht über Selbsteingabe bzw. der Modifizierung in der URL manipuliert werden

Vorteile von der Methode "get":

- Daten sind immer verfügbar und gehen nicht verloren. Sie haben sicher schonmal gesehen das Sie ein Formular im Internet ausgefüllt haben, dieses verschickt haben und dann mit dem "Züruck"-Button Ihres Browsers die Meldung kam: Seite abgelaufen, sollen die Daten erneut gesendet werden? Dies passiert bei der Methode "get" nicht, daher eigent es sich gut für die Navigation einer Website oder einfach Daten die über die ganze Seite bestehen sollten. (zum Beispiel die Sprache "datei.php?lang=de")

 

weiter zum PHP Tutorial Teil 2.2