egal: While-Schleife läuft nur einmal durch

  
$sql="SELECT fragen_id FROM poll_fragen_teams WHERE team_id='2'";  
$res=mysql_query($sql) or die(mysql_error());  
while($get=mysql_fetch_array($res)){  
echo $get['fragen_id'];  
}  

poll_fragen_teams
team_id fragen_id
1          1
2          1
2          2

Ausgabe: "2"

Eigendlich müsste er ausgeben "12".

Woran liegts? Kommt keine Fehlermeldung.

Lg

Egalistimo

  1. Hi

    Hast du mal geschaut was passiert, wenn du den WHEN-Teil weglässt?
    Ist team_id ein String? Wenn ja kannst du die Anführungszeichen auch weglassen. :)

    Gruß
    Moe

    1. Hast du mal geschaut was passiert, wenn du den WHEN-Teil weglässt?
      Ist team_id ein String? Wenn ja kannst du die Anführungszeichen auch weglassen. :)

      Du meinst den WHERE-Teil - gleiche Ausgabe - 1
      Nein es ist nur eine Zahl. eine ID.

      1. In dem Fall kannst du wie gesagt die Anführungszeichen weglassen, auch wenn das sicher nicht den Fehler auslöst.

        Probier mal was ausgegeben wird wenn du per mysql_num_rows() abfragst wieviele Reihen von der Anfrage betroffen sind.

        1. Probier mal was ausgegeben wird wenn du per mysql_num_rows() abfragst wieviele Reihen von der Anfrage betroffen sind.

          Da kommt wies auch richtig ist 2 raus.

          total komisch..

          1. Tja... Probier mal die Funktion hier

            function mysql_fetch_all($query){  
             $r=@mysql_query($query);  
             if($err=mysql_errno())return $err;  
             if(@mysql_num_rows($r))  
              while($row=mysql_fetch_array($r))$result[]=$row;  
             return $result;  
            }
            

            und geb das Ergebnis per print_r() oder was du verwenden willst aus. Dann kann du schonmal sicher sagen ob es an deinem Code liegt oder nicht..

            1. Hi.
              Komische Ausgabe:
              Array ( [0] => Array ( [0] => 1 [fragen_id] => 1 ) [1] => Array ( [0] => 2 [fragen_id] => 2 ) )

              Ich weiß nicht wie ich damit umgehen soll.

              Liebe Grüße

              1. Array ( [0] => Array ( [0] => 1 [fragen_id] => 1 ) [1] => Array ( [0] => 2 [fragen_id] => 2 ) )

                Das heisst im Prinzip, dass deine Anfrage 2 Ergebnisse zurückliefert.
                Wenn du jetzt per foreach() über das Ergebnis iterierst sollte es funktionieren.
                Also so:

                  
                foreach(mysql_fetch_all($query) as $key) {  
                  echo $key[0]; // oder auch echo $key['fragen_id']  
                }  
                
                
                1. Hi.

                  foreach(mysql_fetch_all($query) as $key) {
                    echo $key[0]; // oder auch echo $key['fragen_id']
                  }

                    
                    
                  ES KLAPPT!!!! DANKE MOE - Du bist die Rettung nach 4 Stunden probieren.  
                  Einen wunderschönen Abend noch.  
                    
                  Lieber Gruss  
                    
                  diesmal nicht egal, sondern von mir - Phil
                  
                  1. ES KLAPPT!!!! DANKE MOE - Du bist die Rettung nach 4 Stunden probieren.
                    Einen wunderschönen Abend noch.

                    Lieber Gruss

                    diesmal nicht egal, sondern von mir - Phil

                    Freut mich dass es dir geholfen hast.
                    Dir auchnoch einen schönen Abend

                    Gruß
                    Moe