gpt4 book ai didi

php - 意外警告 - mysql_fetch_array() 期望参数 1 为资源,给定 bool 值

转载 作者:太空宇宙 更新时间:2023-11-03 12:16:06 25 4
gpt4 key购买 nike

<分区>

我似乎遇到了 mysql_fetch_array 函数正在报告 Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given 即使参数 I' m 传递的是一个资源

我知道 mysql_* 函数已被弃用,数据库交互应该使用 mysqli 或更好的准备语句来完成,但是我无法更改在此实例中用于与数据库交互的方法,因为它不是我有权在其上执行此操作的软件。

结构如下:

$sql; //contains the query
if(!$result = mysql_query($sql)) {
//report error
} else {
if(mysql_num_rows($result) > 0) {
while($instance = mysql_fetch_array($result)) {
//runs once, even though there are 3 results.
}
} else {
//no rows
}
}

警告是在行 while($instance = mysql_fetch_array($result)) { 上发出的,表明我已经向函数传递了一个 bool 值。

当我在 while($instance = mysql_fetch_array($result)) { 之前的行上对 $result 执行 var_dump 时,我收到输出:

resource(22) of type (mysql result)

当我手动运行在 $sql 中生成的查询时,我得到了 3 个结果。

我正在努力寻找关于为什么我收到此警告的解释,并且循环只执行一次。

同样,我知道不推荐使用 mysql_,因为它不安全且已弃用,而且代码中有些事情做错了,例如意外赋值(在这种情况下显然是有意为之)但无论如何,代码仍应正确执行。

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