【发布时间】:2020-04-04 19:14:31
【问题描述】:
这里是代码
if (isset($_POST['signUp']))
{
$username = mysqli_real_escape_string($database_connect, trim($_POST['username']));
$email = mysqli_real_escape_string($database_connect, trim($_POST['email']));
$password = mysqli_real_escape_string($database_connect, trim($_POST['password']));
$password2 = mysqli_real_escape_string($database_connect, trim($_POST['password2']));
if (!empty($username) && !empty($email) && !empty($password) && !empty($password2)
&& $password == $password2)
$query = "SELECT * from 'users' WHERE username = '$username'";
$data = mysqli_query($database_connect, $query);
if (mysqli_num_rows($data) == 0) {
$query = "INSERT INTO 'users' (username, email, password, password2) VALUES('$username', '$email', SHA('$password'), SHA('$password2'))";
mysqli_query($database_connect, $query);
echo "OK";
mysqli_close($database_connect);
exit();
} else {
echo "Such login already exists";
}
我该怎么办? P.S 我已经在 Stack Overflow 上搜索过这个问题,但没有找到解决方案。
【问题讨论】:
-
表名周围没有引号
-
切勿以明文形式或使用 MD5/SHA1 存储密码! 仅存储使用 PHP 的
password_hash()创建的密码哈希,然后您可以使用password_verify()进行验证。看看这个帖子:How to use password_hash 并了解更多关于bcrypt & password hashing in PHP -
OK 这个问题已经解决了,谢谢大家!但它仍然没有将任何数据保存到我的数据库中......