我想搜索我的数据库,看看正在注册的用户是否正在使用当前在我的数据库中的用户名。我已经注册了大约5次相同的名字,所以它应该返回false,但它返回true。

<?php
function registerUser($userName, $userPassword) {

    $db = new dbinterface();
    $db->connect();

    // check for duplicate data
    $checkduplicates = "SELECT * FROM usersexample WHERE $userName = :userName";
    $myresult = mysql_query($checkduplicates);

    if(mysql_num_rows($myresult) > 0){
        echo $myresult;
        return false;
    }
?>

我的表名是usersexample,我正在搜索的字段是userName
感谢您的一切帮助!
在示例中使用mysql_num_rows会得到以下警告:
警告:mysql_num_rows():提供的参数不是有效的mysql结果资源。

最佳答案

使用mysql_num_rows()检查返回的行数。
样品:

$myresult = mysql_query($checkduplicates);
$rowcount = mysql_num_rows($myresult);

if($rowcount > 0)
{
    // Account name already in use
}

09-27 10:24