在mysql_fetch_assoc($ result)之后$ result不可用,为什么

时间:2011-04-21 00:16:14

标签: php mysql database

我从sql获取数据然后运行 while($ list = mysql_fetch_assoc($ result)){ ... }

然后我尝试做同样的事情,但它没有给出结果是空的,使用mysql_fetch_assoc()清除$ request变量?

3 个答案:

答案 0 :(得分:2)

该功能会保留一个计数器,因此当它结束时你无法继续使用它。有两次循环的特殊原因吗?反正:

mysql_data_seek($request, 0);

在第二次循环之前你需要的是什么。

答案 1 :(得分:2)

您使用while循环结束了$ result resurce。要解决此问题,当您想再次使用资源时,将指针倒回到0位置...查看mysql_data_seek()函数以获取更多信息。

答案 2 :(得分:0)

mysql_fetch_assoc本身不知道你什么时候,并没有在while循环中调用它。在单独的循环中使用它时,它不会神奇地重置为结果集的开头。

一旦你到达终点并使用mysql_data_seek将其重置为结果集的开头,并希望返回到开头......或者理想情况下,不需要重复两次结果。