-1
我正在尝试查找用户输入的用户名是否已被其他用户使用,但似乎无法正常工作。这是代码。我不知道还有什么要说的。尝试查找用户名是否已被使用
require 'database.php';
$password = $_POST['password'];
$fname = $_POST['fname'];
$lname = $_POST['lname'];
$username = $_POST['username'];
$email = $_POST['email'];
$message = '';
if ($password === ""){
$message = "<div class='errormsg'>Oops! Must've missed a spot!</div>";
}
else if ($fname === ""){
$message = "<div class='errormsg'>Oops! Must've missed a spot!</div>";
}
else if ($lname === ""){
$message = "<div class='errormsg'>Oops! Must've missed a spot!</div>";
}
else if ($email === ""){
$message = "<div class='errormsg'>Oops! Must've missed a spot!</div>";
}
else if ($username === ""){
$message = "<div class='errormsg'>Oops! Must've missed a spot!</div>";
}
$query = mysql_query("SELECT username FROM users WHERE username='".$username."'");
if (mysql_num_rows($query) != 0)
{
$message = "<div class='errormsg'>Username already exists!</div>";
}
启用错误报告并检查您的日志,它会告诉您要查找什么。 'error_porting(E_ALL);''ini_set('display_errors',1);' ['mysql_error'](http://php.net/manual/en/function.mysql-error.php) – Qirel
'mysql_ *'函数从PHP 5.5开始已被弃用(并且在PHP 7中完全删除**),如果可以的话,您应该[停止使用它们](http://stackoverflow.com/q/12859942)。 你应该选择另一个允许你使用[准备语句](http://stackoverflow.com/q/60174/)的API(当处理变量时你应该*),比如'mysqli_ *'或者PDO - 请参阅[选择API](http://php.net/manual/en/mysqlinfo.api.choosing.php)。 – Qirel
您应该首先将您的mysql表中的用户名列作为备份。 – Rasclatt