Hallo,
wenn ich in einem Formular einen Select-Bereich mit multiple definiere, wie kann ich dann in PHP anschließend herausfinden, was alles angewählt wurde? (In der Variable steht immer nur der unterste markierte Eintrag)
Homepage selbermachen 7.849 Themen, 35.585 Beiträge
Du kannst die ausgewählten Werte als Array übergeben. Dazu muß dem Namen des Select-Bereiches ein [] angehängt werden.
z.B.
<select name="liste[]" multiple>
<option>Eintrag1</option>
<option>Eintrag2</option>
<option>Eintrag3</option>
</select>
Die ausgewählten Einträge sind dann im PHP-Skript als
$liste[0] bis $liste[$n-1] verfügbar.
$n entspricht der Anzahl ausgewählten Elemente und läßt sich über die count()-Funktion ermitteln: $n=$count($liste).
Bevor man allerdings auf das Array zugreift, muß man mit der Funktion isset() ermitteln, ob es überhaupt existiert, da es nur übergeben wird, wenn auch tatsächlich Einträge in der Liste ausgwählt wurden.