从PHP进行的查询中获取结果

时间:2013-01-14 18:20:43

标签: php mysql

我正在尝试编写一个PHP函数,用于检查给定值是否在数据库的列中。该函数采用参数$userName$link,其中$userName将在数据库userid的{​​{1}}列中检查。这是我到目前为止所得到的:

$link

页面总是说给定的用户名不是唯一的。

3 个答案:

答案 0 :(得分:1)

试试这个:

function isUnique($userName, $link) {
    return !!mysqli_fetch_row(mysqli_query($link, "select `userid` from `login` where `userid`='".$userName."'"));
}

由于mysqli_fetch_row如果没有行则返回null,如果有一个数组则返回数组,因此转换为布尔值会告诉您是否存在行。

答案 1 :(得分:0)

$userName = mysqli_escape_string($userName); // Or such

"SELECT COUNT(*) FROM login WHERE userid='$userName'"

BTW IMO最好INSERT,然后检查插入的行数和错误代码/ msg。 如果那是0和“......重复...”,那么你知道它正在使用中,并且可以正确对待。

答案 2 :(得分:0)

function isUnique($userName, $link)
{
                $result = mysqli_query($link, 'SELECT `userid`
                        FROM `login`
                        WHERE `userid` = \''.$userName.'\''));
                return mysqli_num_rows($result) == 0;
}

phpfreaks

复制