我目前正在做一个项目,我需要让用户注册,然后向网站管理员的电子邮件发送一封带有批准链接的电子邮件(包含下面的 php 页面、用户电子邮件和 sha512)。单击批准链接时,它意味着使用相应的电子邮件更新表并将 isApproved 更改为 1,但它除了打印回声之外什么都不做。
我尝试更改 SQL 命令,在名称周围添加 `,在 w3schools、stackoverflow 和其他论坛上查找,但一无所获。
<?php
$hash = $_GET['h'];
$email = $_GET['e'];
if($hash == hash('sha512', 'ACCEPT')){
$host = "redacted";
$dbUsername = "redacted";
$dbPassword = "redacted";
$dbname = "redacted";
//create connection
$conn = mysqli_connect($host, $dbUsername, $dbPassword, $dbname);
if (mysqli_connect_error())
{
die('Connect Error('. mysqli_connect_errno().')'.mysqli_connect_error());
}
else
{
$sql = "UPDATE `User` SET `isApproved`='1' WHERE `User`.`email`=$email";
echo("approved");
}
?>
我打开网站时看到的都是“已批准”,这正是我所期望的,但数据库中的记录保持不变。
猛跑小猪
墨色风雨