Dynamische Anzahl von Inputs auslesen
Michael Raidt
- php
0 wahsaga0 YetAnotherMichael0 Tom
Hallo Forum,
ich versuche gerade ein Bestellformular in PHP zu realisieren. Anfangs gibt es nur eine Zeile mit zwei Feldern (input/text). Durch einen Button kann man per JavaScript (clone) eine weitere Zeile hinzufügen.
Mein Problem ist nun das Auslesen aller Zeilen in der nachfolgenden PHP-Datei. Ich wäre dankbar, wenn mir jemand einen Lösungsvorschlag oder ein Stichwort/Link nennen kann, da ich trotz langer Suche in der PHP Doku keinen Anhaltspunkt gefunden habe.
Ach ja, es handelt sich um PHP 4.
Gruß, Michael
hi,
Mein Problem ist nun das Auslesen aller Zeilen in der nachfolgenden PHP-Datei.
input-felder mit name="feldname[]" benennen - durch die eckigen klammern erhältst du in $_POST['feldname'] dann ein array, dass du beispielsweise in einer schleife durchlaufen kannst.
btw: auch fortlaufende indices sind möglich, name="feldname[0]", name="feldname[1]" etc. - evtl. komfortabler, wenn es "lücken" in den eingaben geben kann.
gruß,
wahsaga
»» ich versuche gerade ein Bestellformular in PHP zu realisieren. Anfangs gibt es nur eine Zeile mit zwei Feldern (input/text). Durch einen Button kann man per JavaScript (clone) eine weitere Zeile hinzufügen.
Ich vermute, dass du bei den Input-Namen der Felder ein Textmuster wie inputname_1, inputname_2 verwenden kannst.
Dann bildest du eine Schleife
$i = 1;
while (isset ($_REQUEST['inputname_'.$i]))
{
//nimm die Variable hier entgegen
$i++;
}
Hilft das?
Michael
Hello,
Dann bildest du eine Schleife
Schleife ist gut, aber bitte die Spezialschleife für Arrays: foreach()
$i = 1;
while (isset ($_REQUEST['inputname_'.$i]))
$_REQUEST ist schlecht, da das nur noch für allgemeine Abfragen genutzt werden sollte. Anderenfalls hätte man die Trennung in $_GET, $_POST, $_COOKIE, $_SESSION, $_SERVER, ... nicht vornehmen müssen.
Safety first. $_REQUEST entspricht nicht dieser Regel!
Harzliche Grüße aus http://www.annerschbarrich.de
Tom