Fun*_*ner -12 php forms email-verification
我现在已经在这几个小时了,并且摸不着头脑是什么问题.
表单工作并发送电子邮件,但是当单击验证链接时,它不会显示回显的"成功"消息,而是显示消息("错误消息"); 信息.和盐有什么关系?
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" size="35" name="email" title="Email">
<input id="button" type="submit" name="submit" value="Submit your Email" />
</form>
<?php
$salt = "mysecret";
if(isset($_POST["confirm"]) && isset($_POST["email"])){
$confirm = $_POST["confirm"];
$to_email = $_POST["email"];
if(sha1($salt.$to_email) == $confirm){
echo "Success";
} else{
die("error: mail not confirmed");
}
} elseif(isset($_POST["email"])){
$to_email = $_POST["email"];
$confirm_link = "http://www.mysite.com/form.php?confirm=".urlencode(sha1($salt.$to_email))."&mail=".urlencode($to_email);
$msg = "to confirm ... click the link: \n ".$confirm_link;
mail($to_email, "pls confirm your mail", $msg);
} else{
die("error message");
}
?>
Run Code Online (Sandbox Code Playgroud)