Formulare in PHP
Eine der besten Leistungen von PHP besteht darin, HTML-Formulare dynamisch zu gestalten und die Daten weiter zu verwenden, mit relativ geringem Aufwand.Formulardaten auswerten
Das folgende Beispiel stellt ein einfaches Eingabeformular dar:<form method="post" action="Ausgabe.php">
Artikel: <input type="text" name="Artikel"><br>
Farbe: <input type="text" name="Farbe"><br>
Preis: <input type="text" name="Preis"><br>
<input type="submit" name="senden" value="Senden">
</form>
method="post"
), sind die Daten dann in den jeweiligen Variablen enthalten:a) sofern aktiviert, trägt der Variablenname, den Namen des HTML-Feldes (
name="..."
)b) bei verwendeter POST-Methode, sind die Daten durch
$HTTP_POST_VARS['feldname']
abfragbarc) bei verwendeter GET-Methode, sind die Daten durch
$HTTP_GET_VARS['feldname']
abfragbard) ab PHP 4.1.0 sind die Daten zusätzlich mit
$_GET['feldname']
bzw. $_POST['feldname']
abfragbar.Beispiel:
<html>
<head>
<title>Ausgabe der eingegebenen Werte</title>
</head>
<body>
<?php
echo "Artikel: $Artikel<br>";
echo "Farbe: $Farbe<br>";
echo "Preis: $Preis<br>";
?>
</body>
</html>
<form method="post" action="Ausgabe.php">
<input type="checkbox" name="agb" value="1">
Hiermit akzeptiere ich die AGB.<br>
<input type="submit" name="senden" value="Senden">
</form>
<?php
if(isset($_POST['agb']))
{
//AGB wurden akzeptiert ...
}
else
{
//AGB wurden nicht akzeptiert ...
}
?>
[]
hinten dran. PHP erkennt dies dann und erzeugt ein Array mit den entsprechenden Werten. Beispiel:
<form method="post" action="Ausgabe.php">
<select name="auswahl[]" size="3" multiple="multiple">
<option value="1">Auswahl 1</option>
<option value="2">Auswahl 2</option>
<option value="3">Auswahl 3</option>
</select>
<input type="submit" name="senden" value="Senden">
</form>
<?php
$auswahl = $_POST['auswahl'];
echo 'Ausgewählt wurden: ';
for($i=0;$i<count($auswahl);$i++)
{
echo $auswahl[$i];
}
?>
Dateiupload
Das Upload ist das Kopieren einer Datei aus dem Dateisystem des Clients auf das Dateisystem des Servers. Welche Datei hochgeladen wird, kann der Benutzer mit einem Dialogfeld auswählen. Das Dialogfeld kann so formuliert werden:<form method="post" action="Ausgabe.php"
enctype="multipart/form-data" >
Datei: <input name="Datei" type="file"><br>
<input type="submit" name="senden" value="Senden">
</form>
enctype="multipart/form-data"
), da die Datei sonst von den meisten Browsern nicht hochgeladen wird. Die Datei wird dann beim Absenden des Formulars an den Server geschickt und mit dem Variablennamen $Datei
bzw. $_FILES['Datei']
angelegt. Da PHP die Datei allerdings nicht dort ablegt wo wir sie haben möchten, sollte die Datei anschließend in das Zielverzeichnis kopiert werden. Beispiel:
<?php
if (move_uploaded_file($_FILES['Datei']['tmp_name'],
'/meinverzeichnis/'.$_FILES['userfile']['name']))
{echo 'Ok.';}
else{echo 'Fehler, Datei konnte nicht geladen werden.';}
?>
name
(Dateiname), type
(MIME-Type), size
(Dateigröße in Byte), tmp_name
(Dateiname im Uploadpfad) und error
(Fehlermeldung) gespeichert.Achtung: Wenn auf dem Zielverzeichnis eine Datei mit diesem Namen schon vorhanden ist, wird diese überschrieben!
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Weiterlesen: ⯈ Datenbanken
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project