Mailinglisten-Archive |
Reinhold Riedersberger schrieb: > bin gerade am programmieren eines Formulares das unter anderem mehrere > Auswahlfelder (Listbox) enthält. > > Nun möchte ich, daß für den Fall einer Änderung eines Datensatzes über > dieses Formular die Vorgabewerte aus der Datenbank korrekt eingestellt > werden. Insbesondere bei den Auswahlfeldern habe ich hier ein kleines > Problemchen. ........ > Beispiel: Hr/Fr wählbar. > > Die Anrede "Herr" steht an erster Stelle der Auswahlliste. > "Selected" soll für den zu ändernden Datensatz aber "Frau" > sein, da dies im Datensatz bereits so eingetragen ist. > > Es gibt doch aber sicherlich schon Programmcode/Schnipsel die dieses > Problem elegant gelöst haben. Nur wo finde ich diese? Nicht wirklich elegant, aber eine meine ersten eigenen Funktionen macht sowas ähnliches. function auswahl_dropdown($schluessel, $wert, $tabelle, $vorauswahl="", $bedingung="", $selectname="") { $abfrageString = "SELECT $schluessel, $wert FROM $tabelle $bedingung ORDER BY $wert"; $abfrage = safe_query($abfrageString); if (!$selectname) {$selectname = $schluessel;} if ($abfrage) { echo "<select name=\"$selectname\">\n"; echo "<option value=\"0\">------------</option>\n"; while ($zeile=mysql_fetch_assoc($abfrage)) { $aktuell=""; $aktKey = $zeile[$schluessel]; $aktWert = $zeile[$wert]; if ($aktKey == $vorauswahl) { $aktuell="selected=\"selected\""; } echo "<option value=\"$aktKey\" $aktuell>$aktWert - $aktKey</option>\n"; } echo "</select>\n"; } } Vielleicht kannst du daraus was ableiten. Gruß Susanne
php::bar PHP Wiki - Listenarchive