我使用一些功能来让用户登录网站。我首先创建了一个如下所示的 login():
function login($username, $password){
$id = user_id_from_username($username);
$username = sanitize($username);
$password = md5($password);
return (mysql_result(mysql_query("SELECT COUNT(`id`) FROM `users` WHERE `username` = '$username' AND `password` = '$password'"), 0) == 1) ? $id : false;
}
正如您在函数的第二行看到的那样,它调用了另一个函数 user_id_from_username。看起来像这样:
function user_id_from_username($username) {
$username = sanitize($username);
return mysql_result(mysql_query("SELECT `id` FROM `users` WHERE `username` == '$username'"), 0, `id`);
}
现在,当我使用登录功能时,我收到一条警告,说明如下:
警告:mysql_result():提供的参数不是第 62 行 .../users.php 中的有效 MySQL 结果资源
它指的是user_id_from_username的return语句中的mysql_result。它会导致登录无法正常工作。
我无法解决此警告。大家觉得有什么不妥吗?
非常感谢!