<select> dynamisch vorselektieren

ThECoDeR

Grünschnabel
Moin!

ich hab n klitzekleines Problem, ich habe ein Formular, indem sich eine Selectbox für Mehrfachauswahl befindet.
Dieses Formular wird zum nächsten Topic übergeben, wo es geprüft wird. Wenn Fehler bestehen soll der User auf zurück klicken können und seine eingaben wieder sehen.

Soweit is das alles kein Problem, ABER für die wiedergabe der Ausgewählten Werte der selectbox nutze ich folgenden Code.
Der funkt soweit auch, nur dass alle werte jeweils in der Anzahl des ausgewählten ausgegeben werden, heisst:

ich habe 3 werte ausgewählt (wert x, wert y, wert z) ---> die ausgabe bei "zurück" sieht dann so aus: wert x, wert x, wert x, wert y, wert y, wert y, wert z, wert z, wert z


PHP-Quellcode:

<?php
$sql= "SELECT * FROM LRT04.faecher";
$sql.=" WHERE `admin` = ''";
$result = mysql_query($sql);
while ($row = mysql_fetch_object($result))
{
if (!count($subad)) echo "<option value=".$row->Fach.">".$row->Fach."</option>";
else
{
for ($i=0;$i<count($subad);$i++)
{
if ($subad[$i] == $row->Fach) $selected = " selected=\"selected\"";
else $selected="";
echo "<option value=".$row->Fach." ".$selected.">".$row->Fach."</option>\n";
}
}
?>


im Forum hab ich dazu nix gefunden, ohne meins komplett umzuuschreiben und teils steig ich net durch.

also wär ne schnelle hilfe echt hilfreich


danke schonma
 
danke :)

sieht auch sehr interessant aus, aber ich steh bei sowas wenigstens für das projekt auf selberschreiben, fürs nächste komm ich drauf zurück :)

hab das problem mit in_array gelöst, also die for anweisung weg und dann "if (in_array("...",$subad) $select="selected"; else $select="";


trotzdem danke

grüß
 
Zurück