인증코드 생성LOGIN

인증코드 생성


1. 기본 정보 확인

<?php
$(document).ready(function() {
    $("#yzmfs").click(function () {
        //确保手机号不为空
        var mobile=$("#phone").val();
        if(mobile.length==0)
        {
            alert('请输入手机号码!');
            $("#phone").focus();
            return false;
        }
        if(mobile.length!=11)
        {
            alert('请输入11位手机号!');
            $("#phone").focus();
            return false;
        }
        var myreg = /^((1[3|4|5|8][0-9]{1})+\d{8})$/;
        if(!myreg.test(mobile))
        {
            alert('请输入正确的手机号码!');
            document.getElementById("phone").focus();
            return false;
        }
        //点击发送短信验证码
      
    })
})


2. 60초 카운트다운이 js에 표시됩니다.

<script type="text/javascript">
    var countdown=60;
    function settime(obj){
        //60秒倒计时
        if (countdown == 0){
            obj.removeAttribute("disabled");
            obj.value="发送短信验证码";
            countdown = 60;
            return;
        }else{
            obj.setAttribute("disabled", true);
            obj.value="重新发送(" + countdown + ")";
            countdown--;
        }
        setTimeout(function() {
                settime(obj) }
            ,1000)
    }
    </script>

3. Ajax가 인증코드 생성을 실현

먼저 jquery 파일을 소개합니다

<script src="jquery-1.11.0.js" type="text/javascript"> </script>

<?php
//点击发送短信验证码
$.ajax({
    async : false,
    type: "get",
    url: "code.php", //
    data: {},
    success: function (data) {
        $("#code").val(data);
  
    }
});

4, 데이터 반환을 위한 code.php ajax 요청을 생성하고

인증 코드에 대해 base64 암호화를 수행합니다. 코드는 다음과 같습니다.

<?php
$code_len=4;
$code=array_merge(range('A','Z'),range('a','z'),range(1,9));//需要用到的数字或字母
$keyCode=array_rand($code,$code_len);//真正的验证码对应的$code的键值
if($code_len==1){
    $keyCode=array($keyCode);
}
shuffle($keyCode);//打乱数组
$verifyCode="";
foreach ($keyCode as $key){
    $verifyCode.=$code[$key];//真正验证码
}
echo base64_encode($verifyCode);


다음 섹션
<?php echo "ajax实现验证码的生成";
코스웨어