• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Select Felder auslesen

byspeed

Neues Mitglied
Hallo,
ich habe eine Seite mit mehreren Select-Feldern erstellt.

<select name="user1">
<option name="o1">o1</option>
<option name="o2">o2</option>
</select>
<select name="user2">
<option value="o1">o1</option>
<option value="o2">o2</option>
</select>

Das ganze wird aus einer DB "gefüttert" (user1, user2, user_n) und wiederholt sich n mal.
Die unterschiedlichen options o1,o2 sind dabei immer gleich.

Meine jetzige Anwendung holt sich nach absenden des Forms nochmals alle User aus der DB und greift dann über $_POST['$userid"] auf jedes der Felder einzeln zu....

Gibts da nicht ne bessere Lösung?

z.B eine möglichkeit die einzelnen Select-Felder zu "gruppieren" und nach absenden des Formulares auf ein Array der Felder zuzugreifen?
Beispielsweise so:
foreach ($selectfeld in $_POST["selectarray"])
{
echo $selectfeld['userid'].'--->'.$selectfeld['selected_option'];
}


Ich hoffe, mein Problem is einigermaßen verständlich ;)
 
wenn ich das richtig verstanden hast suchst du das??
PHP:
foreach($_POST as $key=>$value){
   echo $key + " => " + $value;
}
 
wenn ich das richtig verstanden hast suchst du das??
PHP:
foreach($_POST as $key=>$value){
   echo $key + " => " + $value;
}

grundsätzlich ja! aaaber....
ich habe noch andre Felder... (gut, deren Namen kenne ich, die könnte ich einfach ausschließen...)

PHP:
foreach($_POST as $key=>$value)
{
 if($key != "andresfeld1" AND $key!="andresfeld2" AND ... )
   echo $key + " => " + $value;
}

Danke!
da drauf, einfach nur das POST-Array abzufragen hätte ich ja auch mal kommen können ;)

Wenn dir noch was schlaues einfällt, um die 'falschen' Felder außer acht zu lasses, lass es mich wissen
 
du könntest die felder die du nicht haben willst mit einem Prefix beginnen lassen und dann mit substr() z.b. die ersten 3 zeichen abschneiden und prüfen ob diese deinem prefix entsprechen, wenn nein dann ist es ein zutreffendes feld..
z.b.

no_absenden
no_hallo
no_bla

und dann prüfen ob no_ am anfang steht ;-) lässt sich dann einfacher erweitern..
 
Zuletzt bearbeitet:
HTML:
<select name="user[]">
<!-- hier war sicher value, statt name="" gemeint -->
<option>o1</option>
<option>o2</option>
</select>
<select name="user[]">
<option value="o1">o1</option>
<option value="o2">o2</option>
</select>

und dann mal folgendes angucken:
PHP:
var_dump($_POST['user']);
 
Zurück
Oben