这是我的查询:
$sqlw = "SELECT * FROM coverages where user_id='3828' ORDER BY sp_id ASC";
$resultw = mysql_query($sqlw);
$roww = mysql_fetch_array($resultw);
while ($roww = mysql_fetch_array($resultw)) {
echo $roww['sp_id']."<br>";
}
echo "TOTAL:".mysql_num_rows($resultw)."<br>";
如您所见,它非常基本结果显示: 总数:29但是当我计算返回的项目列表时,它只有 28 个。我在phpmyadmin上运行查询,它总共显示29行,我确实计算了它们,它们是29。
我运行了不同的其他简单查询,它总是做同样的事情:缺少一行。这可能是微不足道的,也许我错过了一些东西,或者可能与它的服务器有关?任何帮助/想法将不胜感激。谢谢
在循环释放行之前对mysql_fetch_array()
的调用。
您有一个经典的 off-byone 错误。
在循环开始之前,还有一个额外的$roww = mysql_fetch_array($resultw);
。这意味着你要扔掉第一排。