-4

可能重复:
警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在

错误 -> 警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在

    $sql = "SELECT * FROM pictures WHERE filename=$filename";
//makes a query to the database using the question in variable sql.
$result = mysql_query($sql);

ERROR ->if(!($row = mysql_fetch_array($result)))
    {
     //code.......

我不明白,我做错了什么,参数没有错......

4

2 回答 2

3

这意味着您的查询有问题。猜测一下,我建议您需要引用您的变量:

$sql = "SELECT * FROM pictures WHERE filename='$filename'";

然而

您还应该考虑不使用mysql_*函数 - 它们已被弃用。如果您切换到PDO或 mysqli_,它们不仅可以帮助您生成更安全的代码,还可以为您整理值的引用。

于 2012-09-11T16:50:44.973 回答
2

错误消息非常清楚,从 mysql_query 返回的值是布尔值(FALSE)而不是资源,这意味着您的查询失败。

你可能想要这样的东西:

$sql = "SELECT * FROM pictures WHERE filename='$filename'";
$result = mysql_query($sql);
if($result && $row = mysql_fetch_array($result)) { ... }
于 2012-09-11T16:53:18.167 回答