0

MySQLの行を反復処理するのに問題があります。これは私の現在のコードです:

$query = "SELECT * FROM translations
          WHERE iddoc = '$id'
          AND submitted = 1;";
$result= mysqli_query($query);
$numrows = mysqli_num_rows($result);
$row2 = mysql_fetch_row($result);

if ($numrows > 0) {
    while($eachrow = mysqli_fetch_array($result, MYSQLI_NUM)) {
        echo $eachrow[0];
        echo ", ";
        echo $numrows;
   }
}

この結果は次のとおりです。

6, 2

しかし、2行ある場合、whileループが1回の反復で終了するのはなぜですか?私は何を間違って理解していますか?

編集:正しい行数より1つ少ない行が表示されているようです。IEのwhileループの実行時間は、本来よりも1回少なくなります。

4

1 に答える 1

3

問題が見つかりました。最初の行をフェッチしていました

$row2 = mysql_fetch_row($result);

while ループの外側にあるため、2 行目から開始し、最初の行をスキップします。

于 2012-08-22T19:37:08.017 に答える