我是PHP新手,正在编写一个非常基本的注册表单,它将信息转储到MySQL数据库中。不过,即使名称已被占用,我仍然遇到问题,我的程序仍将该帐户添加到SQL表中。 这是我的代码,以检查是否存在名称:PHP - 检查索引是否已经存在于SQL中
$sql = "SELECT * FROM accounts WHERE name = '$name'";
$result = $conn->query($sql);
if (mysql_fetch_array($result) === true) {
die("Error: Username has been taken");
} else {
//register account
}
我每次运行此,无论名称是什么,程序运行的代码else语句内块。如果需要,我可以提供更多信息。
不要使用'mysql'扩展名https://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php – Hackerman
也要了解'prepared statements' ... – Hackerman
它似乎你是混合mysqli和mysql – Noman