-1

可能重复:
警告:mysql_fetch_* 期望参数 1 是资源,布尔给定错误

我收到此错误:

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in G:\xampp\htdocs\functions\musicalbum_function.php on line 35

我正在创建一个音乐上传网站,用户可以在其中将音乐上传到专辑。

这是我收到错误的代码

while ($musicalbums_row = mysql_fetch_assoc($musicalbums_query)) {
     $musicalbums[] = array (
        'id' => $musicalbums_row['musicalbum_id'],
        'timestamp' => $musicalbums_row['timestamp'],
        'name' => $musicalbums_row['name'],
        'description' => $musicalbums_row['description'],
        'count' => $musicalbums_row['music_count'],

然后我返回结果

任何信息都会很棒。谢谢

4

1 回答 1

0

文档false中,当查询方法出现错误时,您会得到一个布尔值。

返回值

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

据推测,您在显示的代码之前正在做这样的事情

$c = mysql_connect("example.com", "user", "password");
mysql_select_db("database");
$musicalbums_query = mysql_query($query);

// If you do this here
var_dump($musicalbums_query);
// You will get this: boolean (false)

// You can do this to see the last error (where $c is the sql connection object)
echo mysql_errno($c) . ": " . mysql_error($c). "\n";

我强烈建议您将变量重命名$musicalbums_query$musicalbums_result只是为了保持它们的正确性。另外,我已经有一段时间没有做过 php/mysql 了,但显然他们已经弃用了这个mysql扩展,mysqli而是希望你使用它。从我所看到的一点点来看,它在语法上看起来是相同的,所以希望它不会是一个大的跳跃。

正如阿司匹林所说,请随时发布查询,我们可以进一步检查是否有错误。

于 2012-08-12T17:07:09.267 回答