Ankündigung

Einklappen
Keine Ankündigung bisher.

Select Multiple durch SQL füllen (problem)

Einklappen

Neue Werbung 2019

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

  • Select Multiple durch SQL füllen (problem)

    Hallo zusammen,

    ich habe folgendes problem und stehe seit Stunden auf dem Schlauch.

    Folgendes wird aus der DB abgefragt

    PHP-Code:
    $get_kundenflaeche_sql "SELECT `kreis`, `gemeinde`, `gemarkung_forstort`, `flur_abt`, `flst_uabt`, `groesse_ges`, `groesse_maßnahme` FROM `flaechendaten` WHERE `waldbesitzer_nr`= '".$_POST['antragsteller_kundennr']."'";
    $result_flaechen mysqli_query($conn,$get_kundenflaeche_sql);
    $row_cnt mysqli_num_rows($result_flaechen);
    echo 
    "Row count:" $row_cnt ;
    if (
    $row_cnt 0){
    echo
    '    <div class="form-group">
            <label>Bereits eingetragene Flächen</label>
            <select multiple class="form-control">'
    ;

    while(
    $row mysqli_fetch_row($result_flaechen)) {
            echo 
    '<option value="';
            echo 
    $row['0']. "'>";
            echo 
    $row['2'].", "$row['3'].", "$row['4']."  </option>";
    }

    echo
    "                                                
                                                        </select>
                                                    </div>
            "

    Obgleich der Row Count 3 ist was auch stimmt bekomme ich immer nur einen Wert in meinem Select multiple ausgegeben und ich sitze wirklich seit 3 Std. an der Fehlersuche. Manchmal hat man ja bekanntlich Tomaten auf den Augen.

    Hoffentlich kann einer von Euch helfen.

    Danke



  • #2
    Wie sieht denn das Endprodukt im Code aus? Hast du Dir mal den Quellcode der generierten Seite angesehen?

    Kommentar


    • #3
      Schau mal hier ev hilft das https://php-de.github.io/jumpto/ausw...rfachauswahlen

      MOD Verschoben von Fortgeschritten
      The string "()()" is not palindrom but the String "())(" is.

      Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
      PHP.de Wissenssammlung | Kein Support per PN

      Kommentar


      • #4
        Womit ich leider immer nerven muss: "Please escape your input". Etwas was ich selbst ewig nicht wusste, mysqli unterstützt wie auch PDO prepared statements.

        Dein Fehler ist ein einfacher Typo:


        PHP-Code:
        echo '<option value="';
        echo 
        $row['0']. "'>"
        Du verwendest beim value einmal einen single und danach einen double quote. Das löst dein problem:

        PHP-Code:
        echo '<option value="';
        echo 
        $row['0']. '">'

        Um gleich noch etwas Werbung für "prepared statements" zu machen würde das dan so aussehen:

        PHP-Code:
        $statement $conn->prepare("SELECT `kreis`, `gemeinde`, `gemarkung_forstort`, `flur_abt`, `flst_uabt`, `groesse_ges`, `groesse_maßnahme` FROM `flaechendaten` WHERE `waldbesitzer_nr`= ?");
        $statement->bind_param("i"$_GET['antragsteller_kundennr']);
        $statement->execute();

        $result_flaechen $statement->get_result();

        echo 
        "Row count:" $result_flaechen->num_rows;

        if (
        $result_flaechen->num_rows 0) {

            echo 
        '<div class="form-group">
                     <label>Bereits eingetragene Flächen</label>
                     <select multiple class="form-control">'
        ;

            while(
        $row $result_flaechen->fetch_array()) 
            {
                echo 
        "<option value="{$row['0']}">{$row['2']}{$row['3']}{$row['4']}</option>";
            }

            echo 
        "</select>
            </div>"
        ;


        Kommentar

        Lädt...
        X