Daten aus MySQL DB in eine Auswahliste übergeben

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

  • Daten aus MySQL DB in eine Auswahliste übergeben

    Hallo,

    ich möchte das beim öffnen der PHP-Seite Daten aus der DB direkt in eine Auswahlliste übergeben werden. Ich habe es folgendermaßen probiert:

    <?php

    $db = mysql_connect("localhost", "", "");
    $res = mysql_db_query("benchmarking",
    "SELECT id_technik, gma FROM tbl_technik; ");

    $num = mysql_num_rows($res);

    for ($i=0;$i<=$num;$i++)
    {

    $a = mysql_result($res, $i, "id");
    $c = mysql_result($res, $i, "gma");

    echo "<select name='technik'>";
    echo "<option value='$a' >$a$c</option>";
    echo "</select>";

    }
    ?>

    Bei der Ausgabe allerdings wird für jedes Element (gma) ein neue neue Auswahliste angelegt und noch eine zusätzliche leere.

    Fehlermeldung:

    Warning: mysql_result() [function.mysql-result]: Unable to jump to row 3 on MySQL result index 3 in Zeile 12, 13

    Wo liegt der Fehler?
    Zuletzt geändert von klein_erbse; 23.04.2008, 10:47.

  • #2
    PHP-Code:
    <?php 
    $db 
    mysql_connect("localhost""root""geheim");
    mysql_select_db('benchmarking');
    $res mysql_query("SELECT id_technik, gma FROM tbl_technik");
    echo 
    "<select name='technik'>";
    while(
    $re=mysql_fetch_array($res)){
      echo 
    '<option value="'.$re['id'].'">'.$re['id'].$re['gma'].'</option>';
    }
    echo 
    "</select>";
    ?>
    Der SELECT selber darf sich nicht innerhalb der Schleife befinden, sonst gibt es für jeden Record einen eigenen SELECT

    Gruss

    tobi

    p.s. bitte PHP Tags des Forums verwenden!
    EDIT:

    code korrigiert. Habe nicht übersehen, dass bereits eine Query an die Db abgesetzt wurde

    Zuletzt geändert von jahlives; 23.04.2008, 10:58.
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      DANKE FÜR DIE SUPERSCHNELLE ANTWORT UND HILFE.

      Leider gibt er mir aber eine leere Liste aus.

      P.S

      werde in Zukunft PHP TAGS nutzen !

      Kommentar


      • #4
        $res = mysql_db_query("benchmarking", "SELECT id_technik, gma FROM tbl_technik; ") or die(mysql_error());
        wird dir bei debugging helfen. Ich tippe auf das Semikolon am Ende der Abfrage

        Kommentar


        • #5
          ...und noch eine zusätzliche leere.
          Das ist auch logisch wegen
          PHP-Code:
          $num mysql_num_rows($res);
          for (
          $i=0;$i<=$num;$i++)
          //besser wäre
          $num mysql_num_rows($res);
          for (
          $i=0;$i<$num;$i++) 
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #6
            Original geschrieben von jahlives
            Das ist auch logisch wegen
            PHP-Code:
            $num mysql_num_rows($res);
            for (
            $i=0;$i<=$num;$i++)
            //besser wäre
            $num mysql_num_rows($res);
            for (
            $i=0;$i<$num;$i++) 
            DANKEEEEE

            Kommentar

            Lädt...
            X