我一直在请求MySQL结果并循环遍历它们:
$query = "SELECT * FROM $table";
$result = mysql_query($query);
for($i = 0; $i < mysql_num_rows($result); $i++){
echo mysql_result($result, $i, $row);
//do something else;
}
你可能会看到会发生什么。如果删除了一行怎么办?如果第一个项目消失了怎么办?在这种情况下,列表中可能有30个项目,但最后的项目索引位于第50位。如何解决此问题或我可以使用的其他系统?
答案 0 :(得分:7)
while($temp = mysql_fetch_assoc($result))
{
echo $temp['id']; // ID Column
}
但是BTW。 mysql_num_rows返回您获取的行数。如果您有一行被删除,则不会被提取,因此它不会计入该数字。
答案 1 :(得分:1)
另外 - 我相信整个行集是在查询时获得的,查询执行后删除的行仍会出现在你的结果中。