当用户使用 php 通过他们的电子邮件地址订阅我的时事通讯时,我如何通过电子邮件向他们发送“激活链接”以确认这是他们的电子邮件地址而不是假的。
所以现在我有
PHP:
<?php
$to = "recipient@example.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
echo "<p>Message successfully sent!</p>";
} else {
echo "<p>Message delivery failed...</p>";
}
?>
我想我会把 $body 改成这样:
$body = "Please click the link to activate your email \n
http://www.activationlink.com?";
我该如何做到,如果用户单击该链接,它会将他们的详细信息添加到 Mysql 数据库,以识别他们是合法订阅者?
感谢任何帮助或建议。谢谢
最佳答案
我喜欢做的是:
在注册过程中生成一个唯一的随机 ID
将 ID 与电子邮件地址、“已确认”字段(默认值:“否”)和任何其他数据一起存储在数据库表中
发送带有指向激活唯一 ID 的 URL 的电子邮件(例如
domain.com/activate.php?id=102939505595
激活页面检查唯一键是否存在,并将
confirmed
字段更改为yes
(或1
或其他)。此外,可选地,保存确认日期/时间、IP 地址和用户代理。
关于php - 通过电子邮件验证链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3237468/