-2

我想检查我的数据库,看看是否有任何用户的确认码与注册用户在其注册表单上输入的确认码相同。但是我不断收到错误消息:

"Warning: mysql_result() expects parameter 1 to be resource, boolean given in /home/elight5/public_html/test/student_register.php on line 15"

据我所知,这意味着有一个未定义的变量,但我知道数据库中的值已正确命名......我的语法有问题吗?我一直在整个网站上使用相同的语法,没有任何问题......

关于/在我的代码中的任何建议或错误?

function confirmcode_exists($confirmcode){
    $confirmcode = sanitize($confirmcode);
    return (mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `confirmcode` = '$confirmcode'"), 0) == 1) ? true : false;

}
4

1 回答 1

0

的错误mysql_result()是说明您的 MySQL 查询失败。

您的实际 SQL 查询看起来语法不正确,这很可能意味着表或列拼写错误,或者您的连接无权访问该表,或者连接可能完全无效。

尝试将您的代码更新为以下内容;这应该向您显示您的实际错误是什么:

$result = mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `confirmcode` = '$confirmcode'");
if (!$result) {
    // query error
    die('Error: ' . mysql_error());
}
return (mysql_result($result, 0) == 1);
于 2012-08-22T15:45:55.203 回答