PHP 错误 : mysql_num_rows(): supplied argument is not a valid MySQL

标签 php mysql class

Possible Duplicate:
mysql_num_rows(): supplied argument is not a valid MySQL result resource

假设我有一个名为 getbyUsername 的函数在名为 User 的类文件中:

public static function getbyUsername($username) {
    $user = new User();
    $query = sprintf('SELECT CLIENT_ID, EMAIL, PASSWORD' . 'FROM %sClients WHERE USERNAME = "%s"', DB_TBL_PREFIX, mysql_real_escape_string($username, $GLOBALS['DB']));
    $result = mysql_query($query, $GLOBALS['DB']);
    if(mysql_num_rows($result)) {
        $row = mysql_fetch_assoc($result);
        $user->client_id = $row['CLIENT_ID'];
        $user->username = $username;
        $user->password = $row['PASSWORD'];
    }
    mysql_free_result($result);
    return $user;
}

我将使用此函数检查用户是否存在

    $user = User::getbyUsername($_POST['username']);
    if($user->userid) {
       echo 'User Exist!';
    } else  {
      echo 'User does not exist';
    }

我从 PHP 中收到错误,但我不知道为什么:

mysql_num_rows(): supplied argument is not a valid MySQL result resource in...

mysql_free_result(): supplied argument is not a valid MySQL result resource in....

有人可以帮助我吗?

最佳答案

您的查询似乎失败,因此 mysql_query 返回 false,这不是有效的 MySQL 结果资源。字段表达式 PASSWORDFROM 关键字之间似乎缺少空格:

'SELECT CLIENT_ID, EMAIL, PASSWORD FROM %sClients WHERE USERNAME = "%s"'

关于PHP 错误 : mysql_num_rows(): supplied argument is not a valid MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6483884/

相关文章:

php - 如何在 javascript 中使用 $.get 从 php 文件中提取两个变量

java - 抛出非法参数异常

php - Laravel 8 - 设置 cookie 响应不起作用

PHP 获取 system() 命令的 PID

php - Mailgun 发送带附件的邮件

javascript - 使用 Javascript 禁用一个类?

c++ - 通过类函数添加到指针 vector

php - 如何使用 mysqli 判断列是否为主键?

mysql where 子句错误

mysql - 多个 LEFT JOINs to self 与标准产生分配