PHP #9
HTML Eingabefeld auslesen

Bild: © puhhha

Eine Stärke von PHP ist die Verarbeitung von Nutzereingaben aus einem HTML-Eingabeformular. Es gibt verschiedene Typen von Formularfeldern, wie das Texteingabefeld, Checkboxes, Radiobutton oder das Auswahlmenu. In diesem Tutorial fangen wir mit den Basics an und zeigen, wie du mit $_POST einfache Texteingabefelder einsetzt und mit PHP auslesen kannst.

Stefan

Febr 04, 2019 · Java

I. Das HTML-Eingabeformular

Schreiben wir zunächst ein einfaches HTML-Eingabeformular, das dem Benutzer zwei Textfelder für die Eingabe eines Vor- und Nachnamen bietet:

Formulare mit PHP bearbeiten

Der HTML-Code der Datei formular.html sieht so aus:

<html><head></head><body>

<h1>Einfaches Eingabeformular</h1>

<form action="auslesen.php" method="post">

    <p><input name="eins"> Vorname</p>
    <p><input name="zwei"> Nachname</p>
    <p><input type="submit"></p>

</form>

</body></html>

Das Formular wird durch den Tag <form> beschrieben. Dieser beinhaltet zwei Attribute:

  • Das Attribut action verweist auf eine PHP-Datei namens auslesen.php. An diese Datei werden die eingegebenen Daten des Formulars zur Verarbeitung weitergeleitet.
  • method gibt die Übertragungsmethode an. Für die Datenübertragung per Eingabeformular verwenden wir post.

Innerhalb von <form> </form> gibt es in unserem Beispiel zwei Text-Eingabefelder, die in HTML mit dem Tag <input> markiert sind. Jedes Eingabefeld bekommt mit dem Attribut name eine eindeutige Benennung.

Schließlich brauchen wir noch einen Submit-Button, der die eingegebenen Daten an die Datei auslesen.php weiterleitet. Ein Submit-Button wird mit <input type="submit"> erstellt.

Jetzt ist unser HTML-Formular fertiggestellt. Als nächstes programmieren wir die Datei auslesen.php, die die Daten aus dem Formular ausliest und sie verarbeitet.

Auch interessant

Symbolbild
Objektorientierung
Lernen Sie mehr über Objektorientierung in Java. Anschaulich beschrieben und mit vielen Beispielen erklärt. Testen Sie Ihr Wissen mit sinnvollen Übungsaufgaben.

Begriffe

Für den Begriff Superklasse wird häufig auch Oberklasse, Mutterklasse, Elternklasse oder ähnliches verwendet. Auch für "Unterklasse" gibt es verschiedene Bezeichnungen: Subklasse, Kindklasse,...

II. Mit PHP auslesen

Wir haben jetzt zwar unser Formular, aber es fehlt noch die Programmfunktionalität. Das soll sich nun ändern. Wir erstellen hierzu eine neue PHP-Datei namens auslesen.php. An diese Datei werden die Nutzereingaben aus dem HTML-Formular gesendet, sodass wir etwas mit diesen anstellen können.

$_POST

Alle im Eingabeformular eingegebenen Werte werden beim Absenden (submit) an den Server in einem assoziativem Array mit dem Namen $_POST gespeichert. Innerhalb des PHP-Programms der Datei auslesen.php kann das Array ausgelesen und die einzelnen Daten verarbeitet werden.

Dabei liefert $_POST["eins"] die Nutzereingabe aus dem ersten und $_POST["zwei"] aus dem zweiten Eingabefeld zurück.

Für unseren Testzweck genügt es, wenn wir die Daten mit echo am Bildschirn ausgeben:

<html><head></head><body>

<?php
echo "Hallo " . $_POST["eins"] . " " . $_POST["zwei"];
?>
 
</body></html>

Wir sehen dann im Browser zum Beispiel Folgendes:

Hallo Peter Maier

Wie Du siehst, ist das alles ganz einfach 😊

Auch interessant

Symbolbild Sashkin/ fotolia
Einführung in Methoden
Methoden beschreiben, was Objekte tun können. Einfache Beispiele hierfür sind: Text auf der Konsole ausgeben, das Ergebnis einer Berechnung zurückliefern oder den Wert von Instanzvariablen verändern. Wir schauen uns in diesem Kapitel die Feinheiten im Einsatz von Java-Methoden genauer an.

III. Übungen

einfach

Erstellen Sie ein Eingabeformular (formular.html) mit drei Texteingabefelder für Obstsorten. Die Eingaben sollen anschließend in folgender Form auf dem Bildschirm angezeigt werden (programm.php):

Obstsorte 1: Apfel
Obstsorte 2: Birne
Obstsorte 3: Zitrone
<html><head></head><body>

<h1>Bitte geben Sie hier die Obstsorten ein</h1>

<form action="programm.php" method="post">

    <p><input name="obst1"> Nr1</p>
    <p><input name="obst2"> Nr2</p>
    <p><input name="obst3"> Nr3</p>
    <p><input type="submit"></p>


</form>

</body></html>                                
<html><head></head><body>

<?php

echo "Obstsorte 1: " . $_POST["obst1"] . "<br>" .
     "Obstsorte 2: " . $_POST["obst1"] . "<br>" .
     "Obstsorte 3: " . $_POST["obst1"];

?>

</body></html>                                
mittel

Eine Kleine Fingerübung: Erstellen Sie ein Formular mit zwei Eingabefeldern. In jedes Eingabefeld geben Sie eine Zahl ein!
Im PHP-Programm sollen die eingegebenen Zahlen miteinander addiert werden. Wenn die Summe größer als 10 ist, soll auf dem Bildschirn in blauer Schrift der Text "Die Summe ist größer als 10." erscheinen. Ist die Summe dagegen nicht größer als 10, soll in roter Schrift "Die Summe ist nicht größer als 10." angezeigt werden.

<html><head></head><body>

<h1>Bitte geben Sie zwei Zahlen ein</h1>

<form action="programm.php" method="post">

    <p><input name="z1"> Zahl 1</p>
    <p><input name="z2"> Zahl 2</p>
    <p><input type="submit"></p>


</form>

</body></html>
                               
<html><head></head><body>

<?php

if($_POST["z1"] + $_POST["z2"] > 10){
    echo "<span style='color: blue'>Die Summe ist größer als 10.</span>";
}
else{
    echo "<span style='color: red'>Die Summe ist nicht größer als 10.</span>";
}

?>

</body></html>                                
schwer

Entwirf ein Formular mit zwei Eingabefeldern. In das erste Eingabefeld soll entweder der Namen "Mario" oder "Mega-Man" eingegeben werden. Das zweite Eingabefeld nimmt eine Ganzzahl auf, die festlegt, wie oft die gewählte Figur am Bildschirm erscheinen soll.

Hier die beiden, schön pixeligen Grafiken (rechte Maustaste -> Bild speichern unter...):



<html><head></head><body>

<h1>Welche Figur wie oft?</h1>

<form action="programm.php" method="post">

    <p><input name="figur"> Wähle "Mario" oder "Super-Man"</p>
    <p><input name="anzahl"> Wie oft soll die Figur erscheinen?</p>
    <p><input type="submit"></p>


</form>

</body></html>
<html><head></head><body>

<?php

$figur = strtolower($_POST["figur"]);
$n = $_POST["anzahl"];

$figurImg;

if($figur == "mario"){
    $figurImg = "mario.png";
}
else if($figur == "mega-man"){
    $figurImg = "megaman.png";
}

for($i = 0; $i < $n; $i++){
    echo "<img src='$figurImg'>";
}

?>

</body></html>                                

Übungsaufgaben

Am Ende jedes Kapitels können Sie Ihr neu erworbenes Wissen anhand von Übungsaufgaben testen. Die Aufgaben sind in drei verschiedene Schwierigkeitsgrade unterteilt (einfach, mittel, schwer). Am Ende jeder Aufgabe können Sie sich die Lösungen einblenden lassen.

//FALCONBYTE
//FALCONBYTE
FALCONBYTE SITEMAP

JAVA JAVA EINRICHTEN | VARIABLEN | VARIABLEN-SCOPE | PRIMITIVE DATENTYPEN | OPERATOREN | VERZWEIGUNGEN | SWITCH/CASE | ARRAYS | SCHLEIFEN | KLASSEN UND OBJEKTE | KONSTRUKTOR | METHODEN | STATISCHE ELEMENTE | INITIALIZER | PASS-BY-VALUE | SAMMLUNGEN | OBJEKTINTERAKTION | GARBAGE COLLECTOR | VERERBUNG | OBJECT | TOSTRING() | OBJEKTE VERGLEICHEN

PHP VARIABLEN | DATENTYPEN | FUNKTIONEN | FUNKTIONEN FÜR VARIABLEN | ARRAYS | ARRAY-FUNKTIONEN | VERZWEIGUNGEN | SCHLEIFEN | FORMULARE | MIT MYSQL VERBINDEN | SQL-DATENSÄTZE AUSGEBEN | SQL-DATENSÄTZE BEARBEITEN