select problem

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

  • select problem

    Hallo,

    ich hab ein Problem.

    Ich habe ein select, dessen options mit einer schelife gefüllt werden

    Nur leider zeigt dir mir immer nur eine auswahl an auch wenn der mehr erzeugen soll

    PHP-Code:
    <?
       echo '<select name="select1">';
        for ($i=0;$i < $_POST[mzahl]; $i++)
            {          
               while($row=mysql_fetch_row($result1))
                {
        echo '<option value='.$row[0].'>'.$row[0].'</option><br>';
                 }
            }    
       echo '</select>';        
    ?>

  • #2
    PHP-Code:
    <?
       echo '<select name="select1">';
        for ($i=0;$i < $_POST[mzahl]; $i++)
            {          
               while($row=mysql_fetch_row($result1))
                {
        echo '<option value=' . $row[0] . '>' . $row[0] . '</option>';
                 }
            }    
       echo '</select>';        
    ?>
    versuch mal ohne br.
    wie gross is $_POST[mzahl]; ?
    First: Things get worse under pressure.
    Second: If anything just cannot go wrong, it will anyway
    Third: A falling object will always land where it can do the most damage.

    Kommentar


    • #3
      $_POST[mzahl]; wird im formular vorher angegeben. Das ist die Anzahl der Mitarbeiter.

      Die Zahl in $_POST[mzahl]; ist auch korrekt.




      edit:

      das <br> entfernen hat nichts gebracht

      Kommentar


      • #4
        hast du sie schon einmal ausgeben lassen?

        versuch doch auch mal so: $_POST["mzahl"];

        as <br> entfernen hat nichts gebracht -> doch, einigermassen hübscheres und sauberes html
        First: Things get worse under pressure.
        Second: If anything just cannot go wrong, it will anyway
        Third: A falling object will always land where it can do the most damage.

        Kommentar


        • #5
          also

          wenn ich das so ausgebe:

          PHP-Code:
          <?
             echo $_POST[mzahl];
             echo '<select name="select1">';
              for ($i=0;$i < $_POST[mzahl]; $i++)
                  {          
                     while($row=mysql_fetch_row($result1))
                      {
              echo '<option value=' . $row[0] . '>' . $row[0] . '</option>';
                       }
                  }    
             echo '</select>';        
          ?>

          und ich im formular vorher ne 5 eingebe, dann zeigt der mir die 5 an...

          Kommentar


          • #6
            ok, jetzt habe ich was gesehen...

            ich verstehes grundsätzlich nicht, wie man solchen code bauen kann. es gibt doch so nätzliche funktionen wie mysql_fetch_object / mysql_fetch_array oder ähnliches.

            PHP-Code:
            <select name="select1">
            <?
               $result = mysql_query($sql);
               while($row = mysql_fetch_object($result))
               {
                    ?>
                    <option value="<?php echo $row->spaltenid?>"><?php echo $row->spalte_mit_dem_ausgabetext?></option>
                    <?php
               
            }
            ?>
            </select>
            First: Things get worse under pressure.
            Second: If anything just cannot go wrong, it will anyway
            Third: A falling object will always land where it can do the most damage.

            Kommentar


            • #7
              Original geschrieben von Viper1985
              ich verstehes grundsätzlich nicht, wie man solchen code bauen kann. es gibt doch so nätzliche funktionen wie mysql_fetch_object / mysql_fetch_array oder ähnliches.
              Auf welche Weise der Inhalt der Datensätze nun gefetcht wird, ist hier ja ziemlich wurscht.

              Was allerdings ziemlicher Unfug ist, ist die While-Schleife innerhalb der For-Schleife. Würde mich wirklich mal interessieren, ob der OP wusste, was er da tat ...
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Original geschrieben von wahsaga
                Auf welche Weise der Inhalt der Datensätze nun gefetcht wird, ist hier ja ziemlich wurscht.

                Was allerdings ziemlicher Unfug ist, ist die While-Schleife innerhalb der For-Schleife. Würde mich wirklich mal interessieren, ob der OP wusste, was er da tat ...
                nein wusste er nicht



                aber mir ist gerade nen denkfehler aufgefallen von mir.

                Die for schleife muss ich dafür verwenden die die select boxen auszugeben. Wenn ich mehere boxen haben will muss ich das select ja auch in die for schleife tun oder? und die while schleife wollte ich dafür verwenden das option vom select zu füllen. das klappt ja auch...
                Zuletzt geändert von zerberos; 27.07.2006, 09:02.

                Kommentar


                • #9
                  also der gibt mir jetzt die nötige anzahl an boxen aus.

                  nur der füllt nur die erste select box mit der option

                  PHP-Code:
                  <?
                          for ($i=0;$i < $_POST[mzahl]; $i++)
                          {          
                          echo '<select name="select1">';
                             while($row=mysql_fetch_row($result1))
                              {
                      echo '<option value=' . $row[0] . '>' . $row[0] . '</option>';
                               }
                        echo '</select>'; 
                          }            
                  ?>

                  Kommentar


                  • #10
                    Original geschrieben von zerberos
                    nur der füllt nur die erste select box mit der option
                    Könnte daran liegen, dass du noch nicht begriffen hast, wie man das Ergebnis einer Datenbankabfrage verarbeitet, und was dabei passiert.

                    Wenn deine While-Schleife zuende gelaufen ist, steht der "Zeiger" hinter dem letzten Datensatz. Machst du die gleiche Schleife jetzt noch mal, wird da deshalb nichts mehr passieren, weil das fetchen gleich false liefert ...


                    Willst du denn überhaupt in jedem Selectfeld die selben Optionen stehen haben?
                    Wenn ja, dann setze entweder den Zeiger zurück auf den Anfang, bevor du erneut mit While darüber läufst - oder mach's gleich nur ein mal, lege den Code des Selectfeldes dabei in einem String ab, und gib denn dann mehrmals aus.
                    Wenn nein - dann überlege dir erst mal, was du eigentlich willst, bevor du versuchst es zu programmieren.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      nur der füllt nur die erste select box mit der option
                      willst du mehrere select boxen mit unterschiedlichen inhalten?
                      dann bräuchtest du auch mehrere result sets.
                      First: Things get worse under pressure.
                      Second: If anything just cannot go wrong, it will anyway
                      Third: A falling object will always land where it can do the most damage.

                      Kommentar


                      • #12
                        also in den selects möchte ich immer den selben abfrageinhalt drinnen haben

                        Kommentar


                        • #13
                          wie setze ich den den zeiger wieder an den anfang?

                          Kommentar


                          • #14
                            Original geschrieben von zerberos
                            wie setze ich den den zeiger wieder an den anfang?
                            wieso willst du den ganzen krempel x mal machen? wie schon $vorredner gesagt hat, statt das ganze auszugeben wäre es vll besser alles in ein string zu packen und dann an den stellen, an den du die boxen brauchst den string auszugeben (also die select box)
                            MfG
                            aim
                            Lies mich jetzt!
                            - OT-Tags-Liebhaber und BB-Code-Einrücker -

                            Kommentar


                            • #15
                              danke euch

                              hab die daten jetzt einfach in nen array eingelesen und dann das array in der select box ausgegeben

                              Kommentar

                              Lädt...
                              X