PHP: Gleichartige Formularfelder einlesen

In vielen Formularen kommen Felder vor, die ähnliche Eingaben behandeln. Anstatt diese Felder nun einfach durchzunummerieren und im PHP-Code stupide einzeln auszuwerten, können Sie einen bequemeren Weg wählen.

Geben Sie den Feldern im Formular identische Bezeichnungen, hängen aber eckige Klammern an, etwa bemerkung[]. Die Feldinhalte werden Sie in PHP dann in einem Array vorfinden.

Sie können also die Felder beispielsweise einfach durch eine Schleife oder – noch besser – den Befehl join() in eine Variable packen. Das funktioniert dann mit einer beliebigen Anzahl von Bemerkungsfeldern:

<form method=’post’ action='<?php echo

$_SERVER[‘PHP_SELF’];?>’>

<input name=’bemerkung[]’><br/>

<input name=’bemerkung[]’><br/>

<input type=’submit’ ><br/>

<?

if (isset($_POST[‘bemerkung’])) {

$bemerkung = join($_POST[‘bemerkung’],’ ‘);

echo “Bemerkung = ” . $bemerkung;

}?>

In diesem Fall wurden für die Felder des Formulars auf Indizes verzichtet. Sie können aber genauso gut Indizes angeben. Das bietet sich an, um den Überblick im auswertenden Programm zu behalten, wenn in einer Eingabemaske eine ganze Matrix von Feldern zu behandeln ist.

Ähnliche Beiträge