Ankündigung

Einklappen
Keine Ankündigung bisher.

Dropdown Liste mit Inhalt in jeder Tabellenzeile ausgeben

Einklappen

Neue Werbung 2019

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

  • Dropdown Liste mit Inhalt in jeder Tabellenzeile ausgeben

    Hallo,

    Tabelleninhalte werden mittels while ausgelesen.
    In jeder Tabellenzeile soll ein dropdown mit Inhalt aus anderer Tabelle angezeigt werden.
    Problem: Dropdown wird nicht erzeugt, sondern jeder Wert in nächste Tabellenzeile geschrieben.
    Einzelnes dropdown mit Ihnalt ohne Tabelle kann ich erzeugen, nur nicht mit der Tabelle.
    Ich bitte um einen Lösungsansatz.
    Schon mal danke im Voraus.
    Gruß Tom

    PHP-Code:
    $res mysql_query("select * from objektdaten, sachbearbeiter ORDER by strasse");

       while (
    $dsatz mysql_fetch_assoc($res))
       {
          
    $id $dsatz["ref"];
          echo 
    "\n\n<tr>"
           
    "<td><input name='str[$id]' value='" $dsatz["strasse"] . "' size='25' /></td>"
           
    "<td><input name='num[$id]' value='" $dsatz["nummer"] . "' size='3' /></td>"
           
    "<td><input name='ref[$id]' value='" $dsatz["ref"] . "' size='3' /></td>"
           
    "<td><input name='plz[$id]' value='" $dsatz["plz"] . "' size='5' /></td>"
           
    "<td><input name='ort[$id]' value='" $dsatz["ort"] . "' size='20' /></td>"


           
    "<td><option name'" $dsatz["id"] . "'>" $dsatz["vorname"] . "&nbsp" .  $dsatz["nachname"]."</option></td>"   

           
    "</tr>";
       }
       echo 
    "</table>";
       echo 
    "</form>"

  • #2
    da ist schon mal ein syntaxfehler:
    PHP-Code:
    <option name'" . $dsatz["id"] . "'
    außerdem noch: Bitte nicht SELECT * verwenden! Hier kannst du auch nachlesen warum!
    Und noch was: die mysql_*-funktionen sind ab PHP5.5 veraltet und werden ab PHP5.6 oder PHP6 nicht mehr unterstützt, steige daher auf mysqli_* oder PDO um.

    Kommentar


    • #3
      danke für deinen Ansatz maxorxy, werde ich beherzigen!

      Wo soll der syntax Fehler sein?
      Wenn ich nur das dropdown einlese funktioniert das einwandfrei.

      Das Problem ist, dass die Inhalte von 'Sachbearbeiter' auf alle Tabellenzeilen
      verteilt werden.

      Kommentar


      • #4
        du hast ein "=" vergessen, es muss "<option name=" heißen

        Kommentar


        • #5
          Zitat von maxorxy Beitrag anzeigen
          du hast ein "=" vergessen, es muss "<option name=" heißen
          Oh, Danke!
          Hast Du noch einen Lösungsansatz?
          Wenn ich es so mache funktioniert es ja...aber nicht in der Tabelle...

          PHP-Code:
          ?>
                   <select name="dbauswahl" style="width:200pt">
          <?php
                           
          while($dsatz mysql_fetch_assoc($res)) {
                                   echo 
          '<option value="'$dsatz['id'] .'">'$dsatz['vorname'] .' '$dsatz['nachname'] .'</option>'."\n";
          }
                                   echo 
          "<input type='hidden' name='ref' value='" $_POST["id"] . "' />";
          ?>
                   </select>

          Kommentar


          • #6
            Ich glaube du musst für das $_post eine Form nochmal drum herum machen(bei deiner Option), also form method='post'. Hatte sowas ähnliches schonmal vor längerer zeit, da hat das geholfen aber nur ein Vorschlag

            Edit: oder das wurde schon behoben wie gesagt ist ein paar järchen her

            Kommentar


            • #7
              Zitat von Sakron Beitrag anzeigen
              Ich glaube du musst für das $_post eine Form nochmal drum herum machen(bei deiner Option), also form method='post'. Hatte sowas ähnliches schonmal vor längerer zeit, da hat das geholfen aber nur ein Vorschlag
              Thx Sakron.
              einen codeschnipsel dazu vielleicht?
              Wird mir sicherlich weiterhelfen.

              Kommentar


              • #8
                PHP-Code:
                echo "<form method='post'><input type='hidden' name='ref' value='" $_POST["id"] . "' /></form>"
                Wenn es denn so klappt, keine Garantie.

                Kommentar

                Lädt...
                X