-1

我有这个 PHP 代码:

if ($username) {
    if ($news == 1)
        $int = "9";
    if ($news == 0)
        $int = "12";
}
else
    $int = "9";

$query = mysql_query("SELECT * FROM files WHERE active='1' ORDER BY id DESC LIMIT $int");
require ("scripts/connect.php");
$numrows = mysql_num_rows($query);

但是后来我收到了这个错误(注意以 $numrows 开头的行是第 69 行):

警告:mysql_num_rows() 期望参数 1 是资源,布尔值在第 69 行的 /Applications/XAMPP/xamppfiles/htdocs/Site/index.php 中给出

我尝试了很多方法来更改号码,但无济于事。请帮忙!谢谢!

4

1 回答 1

3

如果您scripts/connect.php负责建立数据库连接,那么我mysql_query()认为应该在它之下,而不是现在的上面。我还建议使用mysql_error()并始终检查返回值是否存在错误,因为诸如“查询总是成功”之类的假设是不可行的,并且会在预期较少的时刻对您造成严重打击。

require ("scripts/connect.php");
$query = mysql_query("SELECT * FROM files WHERE active='1' ORDER BY id DESC LIMIT $int");
if( $query ) {
  $numrows = mysql_num_rows($query);
  ...
} else {
   die( mysql_error() );
}

请注意mysql扩展名已弃用。尽快切换到mysqli或更复杂的东西。PDO

于 2012-09-03T23:33:19.560 回答