1

可能重复:
警告:mysql_fetch_array():提供的参数不是有效的 MySQL 结果

我已连接到我的数据库,并且这行代码似乎出现了错误:

  while($br = mysql_fetch_assoc($brand))

在我的查询中,我提出了这个:

  $brand = mysql_query("Select * from genratb");

错误说

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\videoshop\index.php on line 166

第一个命令实际上是我的第 166 行。

4

3 回答 3

1

您的查询似乎失败了。该mysql_query调用可能返回 false,而不是结果资源。

$brand = mysql_query("Select * from genratb");

if (!$brand)
{
    //error, query failed
}

else
{
    while($br = mysql_fetch_assoc($brand))
    {
       //use row
    }
}
于 2012-10-11T01:02:23.943 回答
0

如果他们查询失败,那么mysql_query()将返回false。在这种情况下,您需要查看mysql_error()查询失败的原因。

于 2012-10-11T01:01:02.583 回答
0

PHP 文档指出:

对于 SELECT、SHOW、DESCRIBE、EXPLAIN 和其他返回结果集的语句,mysql_query() 成功时返回资源,错误时返回 FALSE。

您的查询很可能由于某种原因失败,并将 $brand 设置为FALSE. 您确定您的数据库连接正常,并且您的表存在吗?

您可以在查询行之后添加:

if (FALSE===$brand) { die(mysql_error()); }

这应该告诉你出了什么问题。

于 2012-10-11T01:01:36.273 回答