我在注册新帐户时正在写用户电子邮件的确认信息
一切都按照以下原则进行:我们接收用户的电子邮件,创建一个 10000 - 99999 之间的随机数,使用此代码创建 cookie 并通过电子邮件将代码发送给他
$user_email = trim(filter_var($_POST['email'], FILTER_SANITIZE_EMAIL));
$code = trim(rand(10000, 99999));
setcookie("code", $code, time() + 60 * 5, "/lib/check_mail.php");
mail($user_email, 'Код подтверждения адреса Эл.Почты', $code);
header('Location: /lib/check_mail.php');
在下一个窗口中,我们将用户输入的代码与通过电子邮件发送的代码进行比较
$code = $_POST['code'];
$user_code = $_COOKIE['code'];
if ($code == $user_code){
// Код введен верно
} else {
// Код введен НЕ верно
}
问题:此代码的安全性和最新程度如何?如何使检查用户的电子邮件更加相关和安全?