PHP 通过邮件找回密码源码

  Thinkphp 发送邮件找回密码源码

  public function verify()
    {
        $type     =     isset($_GET['type'])?$_GET['type']:'gif';
        import("@.ORG.Image");
        Image::buildImageVerify(4,1,$type);
    }
    
    public function reset()
    {
        $username = $_GET['username'];
        $key = $_GET['key'];
        if(S($username) == $key)
        {
            $_SESSION[C('USER_NAME')] = $username;
            //可以修改密码了跳转
        }
        else
        {
            showMsg('此重置密码链接无效,请确认后在试!','/');
        }
    }
    
    public function getpasswd()
    {
        
        if(md5($_POST['verify'])    != $_SESSION['verify']) {
            showMsg('验证码错误!');
        }

        $username = dhtml($_POST['name']);
        $email = $_POST['email'];
        $model = M('Clubber');
        $map['user_name'] = $username;
        $clubber = $model->where($map)->find();
        if($clubber)
        {
            if($clubber['user_email'] == $email) 
            {
                import("ORG.Net.Smtp");
                $host = $_SERVER['HTTP_HOST'];
                $key = md5(time());
                $reset_url = "http://$host/index.php/Rpwd/reset/username/$username/key/$key";
                $mail_body = "请点击以下链接重置密码,以便激活您的账号:<a href='$reset_url'>$reset_url</a>";
                $smtp = new smtp(C('MAIL_SMTP'),25,true,C('MAIL_USER'),C('MALL_PWD'),C('MAIL_USER'));
                $smtp->debug = true;
                if($smtp->sendmail($email, C('MAIL_USER'), '好开始','好开始-重置密码',$mail_body,'HTML'))
                {
                    S($username,$key);
                    $this->display('success');
                }
                else 
                {
                    showMsg('服务器繁忙,请稍侯在试!');
                }
            }
            else 
            {
                showMsg('请重新输入邮箱,邮箱不正确!');
            }
        }
        else
        {
            showMsg('此用户不存在!');
        }

    }


原文:http://www.qingruxu.com/code/php/504.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值