Matthias Fleischer: options-felder

Beitrag lesen

Ich werde zwar aus der Frage auch nicht wirklich 100% schlau, aber ich vermute mal, daß Du Felder aus einer DB-Tabelle in einer HTML-DropDown-Liste ausgeben möchstest?

In dem Fall hier mal die stark vereinfachte Form einer Funktion, die genau das bewerkstelligt:
(den Großteil der hier nicht aufgeführten, zusätzlichen Parameter, die ich mal eingefügt habe, braucht man eh nur für exotische Anfragen *g*)

function selectbox ($table, $sname, $name, $value, $preselect = FALSE)
{
 $query = MYSQL_QUERY("SELECT ".$name.", ".$value." FROM ".$table);

$output = "\n<SELECT NAME="".$sname."">";

while ($row = @MYSQL_FETCH_ASSOC($query))
 {
  $output .= "\n<OPTION VALUE="".$row[$value].""";
  if ($row[$value] == $preselect)
  {
   $output .= " SELECTED";
  }
  $output .= ">".$row[$name]."</OPTION>";
 }

@MYSQL_FREE_RESULT($query);

$output .= "\n</SELECT>";

return $output;
}

Für den Fall, daß es nicht so daraus hervorgeht:
$table = Name der DB-Tabelle
$sname = Name des SELECT für das Formular
$name = Name des Datensatzfeldes, dessen Inhalt angezeigt wird
$value = Name des Datensatzfeldes, dessen Wert übergeben werden soll
$preselect = ggf. Wert für Vorauswahl eines Eintrages (muß dem jeweiligen Wert in $value entsprechen)

Beispielaufruf also wie folgt:
echo selectbox("wohnorte", "wohnort", "ort", "id", 5);