php – 寻找一些好的选项来发送用户重置密码的电子邮件

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 寻找一些好的选项来发送用户重置密码的电子邮件脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_304_4@ 我想在忘记密码时向用户发送邮件,提示他们重置密码.我知道这是有争议的,正在寻找一些好的选择/建议/方法/文章可供选择.

提示用户使用简单的脚本按下’忘记密码’链接,PHP部分执行此操作:

$Email = $_POST['email'];
$success = false;
$formError = false;

if(isset($_POST['sub_forgot_pw'])) {

    if(empty($_POST['email'])) {
        $formError = "true";
        $error = "Please enter your e-mail address.";
    }else{
        $to = $Email;
        $subject = "Password Help";
        $message = "To reset your password,please <a href='http://www.blahblahblah.org'>Click here</a><br /><br />Do LIFE,<br /> The Team";
        $From = "CysticLife <noreply@cysticlife.org>";
        $headers  = 'MIME-Version: 1.0' . "\n";
        $headers .= 'Content-tyPE: text/htML; charset=iso-8859-1' . "\n";
        $headers .= "From: $from";
        if(mail($to,$subject,$message,$headers));{
            $success = "true";
        }


    }

}

解决方法

这是我做的:

我有reset_password表.当有人要求重置时,他们通常会点击您网站上的“忘记密码”链接,在该链接中他们输入他们注册的电子邮件,系统会发送链接.
当然,您首先要找出用户是否注册.从用户中选择email = $_POST [’email’].
如果它们存在,则创建一个随机生成的令牌,如

$token = md5($_POST['email'].time());

但正如Buh Buh在下面的评论中表达的那样,你可能想要使用一些不太明显的东西来生成你的令牌.如果你愿意,crypt()可以接受盐模式.

在reset_password表中插入请求(电子邮件和令牌),然后向他们发送类似的链接

http://www.domain.COM/resetpassword.PHP?token=<?PHP echo $token; ?>

然后在该文件中,您获取$_GET [‘token’]并将其与reset_password表交叉引用.如果令牌有效,则向您提供一个要求提供新密码的表单.提交后,选择具有与该令牌相关的电子邮件地址的用户并更新用户表.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 寻找一些好的选项来发送用户重置密码的电子邮件全部内容,希望文章能够帮你解决php – 寻找一些好的选项来发送用户重置密码的电子邮件所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。