PHP 用户名检查功能不起作用


PHP username check function not working

$con = mysqli_connect("localhost","root","","database");
function user_exists($username) {
$username = sanitize($username);
$query = "SELECT COUNT(user_id) FROM users WHERE username = '$username'";
$result = mysqli_query($con, $query);
return (mysql_result($result, 0) == 1) ? true : false;
}

我相信查询中存在错误,因为我总是收到"用户名被占用"错误,无论我是否插入现有用户名都没有关系。

**

已解决,谢谢 **

试试这个

$query = "SELECT COUNT(user_id) as user_id FROM users WHERE `username` = '$username'";
$result = mysqli_query($con, $query);

mysql_result不会返回结果,它会发送错误,所以它总是给你真。

使用以下代码获取结果

$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
if($row['user_id']){ return true; } else { return false; }