Rasputin: options-felder

Hallo,
ich moechte eine mysql-Adresse auswerten in únd in einem <options>-Feld darstellen. ICh moechte gerne das Feld schon farbig vorauswaehlen, was in der Tabelle als Inhalt abgespeichert ist.

Nur weiss ich leider nicht, wie ich das machen soll.

Weiss jemand, wie ich das machen soll?

Danke!
Rasputin

  1. Hallo Rasputin

    ich moechte eine mysql-Adresse auswerten in únd in einem <options>-Feld darstellen. ICh moechte gerne das Feld schon farbig vorauswaehlen, was in der Tabelle als Inhalt abgespeichert ist.

    was heißt denn "mysql-adresse" ? Ansonsten mache ich das immer so:

    $link = mysql_connect ("localhost", "", "")
            or exit ("keine Verbindung möglich");
        mysql_select_db("nachrichten") or die("<b>Auswahl der Datenbank fehlgeschlagen</b><br>");

    $daten = mysql_query("SELECT * FROM news ORDER BY datum") or die("<b>Anfrage der Daten fehlgeschlagen !!!!!!</b><br>");

    // Ausgabe der Ergebnisse in HTML
           while ($line = mysql_fetch_assoc($daten)) {
               print "<div class="einnews">\n";
               print "\t<div class="kopf"><img src="images/wichtig" . $line["wichtig"] . ".gif" alt="Wichtigkeit:" . $line["wichtig"] . "">";
               print "<span class="thema">" . $line["thema"] . "</span>   ";
               print "<span class="zeit">(" .  $line["datum"] . ")</span></div>\n";
               print "\t<div class="nachricht">" . $line["nachricht"] . "</div>\n";
               print "</div>\n\n";
           }

    mysql_close($link);

    (Nur so ein beispiel, habe gerade keine Lust, es abzuändern)

    mfg,

    benji

  2. 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);