我需要发送MD5哈希密码数据库。
<?php
$username = filter_input(INPUT_POST, 'name');
$password = filter_input(INPUT_POST, 'password');
print_r($_POST['name']);
if (empty($username)){
echo "Username should not be empty"; die();
}
if (empty($password)){
echo "Password should not be empty"; die();
}
$host = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "db_account";
//create connection
$conn = new mysqli($host, $dbusername, $dbpassword, $dbname);
if (mysqli_connect_error()){
die('Connect Error ('. mysqli_connect_error() .') '
. mysqli_connect_error());
} else{
$sql = "INSERT INTO t_account (name, pwd)
values ('{$username}','MD5({$password})')";
if ($conn->query($sql)){
echo "Account was created successfully!";
}
else{
echo "Error: ". $sql."<br>". $conn->error;
}
$conn->close();
}
?>
当我填写注册例如123456将其发送到这样的(MD5)数据库密码形式123456但不作为散列代码。
也注册成功后只显示@echo后的文本,可以用户重定向到另一个页面?
尝试使用PHP的md5()函数:
$password = md5(filter_input(INPUT_POST, 'password'));
此外,您的发言:
$sql = "INSERT INTO t_account (name, pwd)
values ('{$username}','{$password}')";
我强烈建议你使用准备好的语句。不难学和时间以及投资。