Dropdown - Selected = "selected" nach absenden

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

  • Dropdown - Selected = "selected" nach absenden

    Guten Tag,
    ich habe vor ein Dropdown Menü zu erstellen (via HTML), im dem der Inhalt über eine while-Schleife geparst wird. Mein Ansatz sieht so aus:

    Code:
        <form method="POST" action="index.php">
            <select size="1" name="daten_id">
                <?php
                $con = mysql_connect(DB_HOST,DB_USER,DB_PASS);
                mysql_select_db(DB_NAME,$con) ;
    
                $sql = 'SELECT daten_id, daten_strassenname, daten_strassennr FROM `daten` WHERE 1';
                $db_erg=mysql_query($sql);
    
                while ($inhalt = mysql_fetch_array($db_erg, MYSQL_ASSOC))
                {
                    if ($_POST['send'] == "ja")
                    {
                        $select = "selected=\"selected\"";
                    }
                    else
                    {
                        $select = " ";
                    }
                    echo '<option '.$select.' value="'.$inhalt['daten_id'].'" name="option">'.$inhalt['daten_strassenname'].' '.$inhalt['daten_strassennr'].'</option>';
                }
                ?>
            </select>
            <input type="submit" value="Zu den Details" name="angebot">
            <input type="hidden" name="send" value="ja"  class="button"/>
        </form>
    in diesem Falle ist ja immer nach absenden des Formulars bei jeder Option Selected = "selected" ....
    Irgendwie komme ich nicht weiter und div Google Suchanfragen haben auch nichts ergeben.. Kann mir jemand helfen?
    Gruß Mathias

  • #2
    Hallo,

    der Vergleich auf $_POST["send"] wird immer erfüllt, also ist das Verhalten (wenn auch nicht gewollt) logisch. Überprüfe, ob der Wert von $_POST["option"] mit dem aus der Datenbank übereinstimmt, dann könnte da ein Schuh draus werden.

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Geilo vielen Dank für den Anreiz AmicaNoctis!!!!

      habe ein :

      PHP-Code:
      if ($_POST['send'] == 'ja'){
          
      // Chosen leeren (auf 0 Setzen)
          
      $sqlAuswahl 'UPDATE daten SET chosen = 0';
          
      mysql_query($sqlAuswahl);

          
      // Chosen setzen
          
      $sqlAuswahl 'UPDATE daten SET chosen = 1 WHERE daten_id = '.$_POST['daten_id'];
          
      mysql_query($sqlAuswahl);
      }
      else {
          
      // Chosen leeren (auf 0 Setzen)
          
      $sqlAuswahl 'UPDATE daten SET chosen = 0';
          
      mysql_query($sqlAuswahl);

      am Anfang des Formulars gesetzt und dann per

      PHP-Code:
                      if ($inhalt['chosen'] == "1")
                      {
                          
      $select "selected=\"selected\"";
                      }
                      elseif (
      $inhalt['chosen'] == "0")
                      {
                          
      $select " ";
                      } 
      die <option>value= "asd" $select name="option" </option> erzeugt
      Funktioniert wunderbar

      Gruß Mathias

      Kommentar

      Lädt...
      X