gpt4 book ai didi

php - mysql_data_seek 和 mysql_num_rows

转载 作者:行者123 更新时间:2023-11-29 14:17:26 25 4
gpt4 key购买 nike

我正在尝试重置变量中的数据,以便我可以再次调用它。如果第一个查询中有数据,我需要它来运行重置。首先,我检查数据,其次,如果有数据,我将索引设置回 0。

这适用于我的本地主机环境,但不适用于我的实时环境。我知道我收到错误是因为第一个查询没有显示任何结果,因此 mysql_num_rows($query) 为空。

我收到错误:警告:mysql_num_rows():提供的参数不是有效的 MySQL 结果资源。

(当第一个查询出现结果时,此代码起作用,成功重置并显示第二个查询。)

if (mysql_num_rows($query)){
mysql_data_seek($query, 0);
}

有没有更好的方法可以检查第一个查询是否有信息,而不会在没有找到任何信息时抛出错误?

最佳答案

注意有关使用 mysql_ 的其他评论吗?功能。

如果由于某种原因您要多次迭代结果,请在第一次传递时将它们转储到数组中,正如 Marc B 所评论的那样。例如(仍在使用您的 mysql_? 函数);

$result = mysql_query($query);
if (!$result) {
echo 'Could not run query: ' . mysql_error();
exit;
}
while($row = mysql_fetch_row($result)){
$myResultSet[]=$row;
}

完成后,我们可以根据需要多次迭代该集合

foreach($myResultSet as $row){  # note foreach resets each time
# do stuff with $row['fieldname']
}

但是,您应该利用这个机会将您的 mysql_ 更新为更新的方法...这个底层解决方案将保持不变。

如果这不能解决问题,请发布更多代码,以便我们了解您想要做什么以及为什么。

关于php - mysql_data_seek 和 mysql_num_rows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12378071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com