dropdown mit Datenbankwert vorselektieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • dropdown mit Datenbankwert vorselektieren

    Hallo,

    ich habe gerade folgendes Problem:

    Aufgabe:
    Mit einem Formular, das u.a. Dropdownfelder hat, fülle ich eine Datenbank mit Daten, deren Werte wiederum aus einer Tabelle stammen.

    Mit einem Weiteren Formular soll der Benutzer seine bereits in der Datenbank gespeicherten Daten ändern können. Dazu soll aber in den entsprechenden Dropdownfeldern der Datenbankwert vorselektiert sein.
    (alle weiteren Auswahlmöglichkeiten sollen sichtbar/auswählbar sein und in der Datenbank gespeichert werden können).

    Was ich verwende:
    HTML, PHP5 und MySQL

    Was ich bereits habe:
    Das erste Formular (erste Eingabe der Daten) funktioniert einwandfrei.
    Im zweiten Formular lese ich die gespeicherten Datenbankwerte über php und mysql ein.

    Mein Problem:
    Wie sage ich es meinem Dropdownfeld, dass alle Tabellenwerte (wie schon im ersten Formular) angezeigt werden, aber das der zum Benutzer gespeicherte Wert vorselektiert ist.

    Das unten angeführte Skript funktioniert so leider nicht.
    Es ist immer der erste Eintrag selektiert.


    Wenn mir da jemand weiterhelfen könnte, wäre echt super.
    Danke schon mal im voraus.

    Musikus69

    Zur Erklärung:

    $result2 liefert mir alle Daten aus der Tabelle
    $result2 = mysql_query("select * from stg");

    $reihen2 = Anzahl der gefundenen (auswählbaren) Einträge in der Datenbanktabelle
    $reihen2 = mysql_num_rows($result2);

    $stg ist der vorzuselektierende Datenbankwert

    PHP-Code:
    <?
    echo "  <tr>
     <td><center><font color=\"#FF0000\">* </font></center></td>
     <td><strong>Studiengang:</strong></td>";

    if ($reihen2 < 1) {
        echo "Kein Studiengang in Tabelle vorhanden !<br>";
        exit;
    } else {echo "<td><select name=\"stg\">";
        if (mysql_num_rows($result2)) {
        while($row=mysql_fetch_array($result2)) {
             $stg_id_nr = $row['id_nr'];
             $stg_kurz  = $row['stg_kurz'];
             $stg_lang  = $row['stg_lang'];
        echo "<option value = \"$stg_id_nr\" >$stg_lang</option>";
    //    echo "<option value = \"$stg\"></option>";
    }
    echo "</select></td></tr>";
    }

    ?>
    Aufgabe: dd

  • #2
    Re: dropdown mit Datenbankwert vorselektieren

    Original geschrieben von musikus69

    Wie sage ich es meinem Dropdownfeld, dass alle Tabellenwerte (wie schon im ersten Formular) angezeigt werden, aber das der zum Benutzer gespeicherte Wert vorselektiert ist.
    du mußt durch Vergleich zusätzlich selected in option setzen:

    PHP-Code:

    // anstatt
    echo "<option value = \"$stg_id_nr\" >$stg_lang</option>";

    // machst du

    echo "<option value = \"$stg_id_nr\"";
    if (
    $selektierterWertDesUsers==$stg_id_nr// oder mit $stg_lang
       
    echo " selected=\"selected\"";
    echo 
    ">$stg_lang</option>"

    Kommentar


    • #3
      Jetzt geht's - Danke

      Hallo asp2php,

      danke für Deine schnelle Hilfe.
      Nachdem ich die Anfrage abgeschickt hatte, ist mir ein Lösungsweg eingefallen. Damit war ich schon sehr nahe aber eben nur nahe.
      Dein Tipp war echt super! Jetzt funktionierts wie ich mir das vorgestellt habe.
      Recht herzlichen Dank dafür.

      Musikus69

      Kommentar

      Lädt...
      X