> PHP 프레임워크 > ThinkPHP > thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보

thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보

藏色散人
풀어 주다: 2021-05-07 09:26:43
앞으로
3032명이 탐색했습니다.

다음 튜토리얼 칼럼인 thinkphp에서는 thinkphp 이메일 인증 코드의 프론트엔드와 백엔드를 소개하겠습니다. 필요한 친구들에게 도움이 되길 바랍니다!

thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보

thinkphp 이메일 확인 코드 프런트엔드 및 백엔드

아이디어:

jquery.validate를 사용하여 프런트엔드를 확인하고, 이메일이 존재하는지 확인하고, ajax를 사용하여 상호작용하세요. 백엔드에 있는 메일함 클래스 라이브러리를 사용하여 직접 코딩하세요

준비:

1. PHPMailer 클래스 라이브러리를 다운로드하여 Application/Thinkphp/Library/Vendor/에 넣고, 찾을 수 없으면 온라인으로 검색하세요. contact me
2. SMTP를 켜세요(예: NetEase 메일함

thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보

config.php 입력:

// 配置邮件发送服务器
'MAIL_HOST' =>'smtp.163.com',//smtp服务器的名称
'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证
'MAIL_USERNAME' =>'lishine0216@163.com',//你的邮箱名
'MAIL_FROM' =>'lishine0216@163.com',//发件人地址
'MAIL_FROMNAME'=>'南京商丘商会',//发件人姓名
'MAIL_PASSWORD' =>'a3392894',//邮箱密码
'MAIL_CHARSET' =>'utf-8',//设置邮件编码
'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件
로그인 후 복사

function.php

<?php /**
 * 邮件发送函数
 */
    function sendMail($to, $title, $content) {
     
        Vendor(&#39;PHPMailer.PHPMailerAutoload&#39;);     
        $mail = new PHPMailer(); //实例化
        $mail->IsSMTP(); // 启用SMTP
        $mail->Host=C('MAIL_HOST'); //smtp服务器的名称(这里以QQ邮箱为例)
        $mail->SMTPAuth = C('MAIL_SMTPAUTH'); //启用smtp认证
        $mail->Username = C('MAIL_USERNAME'); //你的邮箱名
        $mail->Password = C('MAIL_PASSWORD') ; //邮箱密码
        $mail->From = C('MAIL_FROM'); //发件人地址(也就是你的邮箱地址)
        $mail->FromName = C('MAIL_FROMNAME'); //发件人姓名
        $mail->AddAddress($to,"尊敬的客户");
        $mail->WordWrap = 50; //设置每行字符长度
        $mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式邮件
        $mail->CharSet=C('MAIL_CHARSET'); //设置邮件编码
        $mail->Subject =$title; //邮件主题
        $mail->Body = $content; //邮件内容
        $mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示
        //return($mail->Send());
        if (!$mail->send()) {
                echo "Mailer Error: " . $mail->ErrorInfo;
        } else {
                echo "Message sent!";
        }
    }
로그인 후 복사

백엔드:

public function createSMSCode($length = 6){
    $min = pow(10 , ($length - 1));
    $max = pow(10, $length) - 1;
    return rand($min, $max);
}

//ajax发送邮件
public function e_mail_send(){
    $e_mail=I("post.e_mail");
    $result=M("user")->where(array("e_mail"=>$e_mail))->find();
    if($result){
        $code=$this->createSMSCode();
        //存储验证码,相当于全局变量,因为再次调用createSMSCode时,代码会变
        session("code",$code);
        session("e_mail",$e_mail);
        SendMail($e_mail,"南京商丘商会验证码","您的验证码是".$code.",请正确填写");
        $data="yes";
    }else{
        $data="no";
    }
    $this->ajaxReturn($data);
}
로그인 후 복사

frontend:

<p>
    </p><p>
        </p><p>                    
            </p><p>
                </p><h3>密码找回!<br><span>请填入您的邮箱进行密码找回</span><br><span>发送后请注意查收邮箱信息填入验证码中</span>
</h3>
                
로그인 후 복사
                                         发送
                                        

                                        
                                                                          
                    
                    

                
                          

ajax 부분:

            <script>
                $("#send").click(function(){
                    var e_mail=$("#e_mail").val();
                     $.post("{:U(&#39;Forget/e_mail_send&#39;)}","e_mail="+e_mail,function(data){
                        if(data=="yes"){
                            $("#back").html("发送成功,请查收邮件");
                        }else{
                            $("#back").html("邮箱错误或不存在");
                        }
                    });    
                });
            </script>
로그인 후 복사

디스플레이:

thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보

위 내용은 thinkphp 이메일 확인 코드 프런트엔드 및 백엔드 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿