循环使用mysql_fetch_array跳过第一行

时间:2012-08-22 18:57:14

标签: php mysql

我在迭代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次迭代后结束?我理解错了什么?

编辑:它似乎显示的行数少于正确的行数。 I.E. while循环的运行时间比它应该少1个。

1 个答案:

答案 0 :(得分:3)

发现问题。我用

取了第一行
$row2 = mysql_fetch_row($result);

在while循环之外,从而导致它在第二行开始并跳过第一行。