tp3+aliyun发送短信验证

tp3+aliyun发送短信
阿里云配置短信包流程

前台

<form action="" method="post" name="form" id="form" enctype="multipart/form-data">
    <div class="register">
        <div class="registeript">
            <p>账号</p>
            <input type="text" name="tel" id="phone_input" />
        </div>
        <div class="registeript">
            <p>验证码</p>
            <input name="smscode" type="text" id="smscode" placeholder="请输入验证码">
            <input type="button" value="发送验证码" id="sendsms" >
        </div>
    </div>
    <input class="button" value="立即提交" type="button" lay-submit="" lay-filter="form"/>
</form>

<script>
    layui.use('form', function () {
        var form = layui.form;
        //监听提交
        form.on('submit(form)', function (data) {
            var smscode = $("input[name='smscode']").val();
            var tel = $("input[name='tel']").val();
            if (smscode == '') {
                layui.use('layer', function () {
                    var layer = layui.layer;
                    layer.msg('请填写验证码');
                });
                return false;
            }
            $.ajax({
                url: "<{:U('Public/login')}>",
                data: $('#form').serialize(),
                type: "post",
                dataType: "json",
                async: false,
                success: function (data) {
                    if (data.status == "1") {
                        layer.msg(data.msg, function () {
                            location.reload();
                        });
                    } else {
                        layer.msg(data.msg);
                    }
                }
            })
            return false;
        });
    });
</script>
<script>
    $('#sendsms').on('click', function (obj) {
        $('#phone_input').keyup(function(){
            if($(this).val().trim()!=''){
                $('#sendsms').prop('disabled', false)
            }
        });
        $('#sendsms').click(function () {
            var tel = $('#phone_input').val().trim();
            var re = /^1[3-9]\d{9}$/;
            if(!re.test(tel)){
                layer.msg('手机号格式错误!');
                return
            }
            var num = 59
            $('#sendsms').val(num+'秒');
            var t = setInterval(()=>{
                $(this).prop('disabled', true);
                num -= 1;
                $('#sendsms').val(num+'秒');
                if(num==0){
                    clearInterval(t);
                    $('#sendsms').val('发送验证码');
                    $(this).prop('disabled', false);
                }
            },1000);
            $.ajax({
                url: "<{:U('Public/getsmscode')}>",
                type: "post",
                dataType: "json",
                data: {'tel': tel},
                success: function (data) {
                    if(data.status == "1"){
                        layer.msg(data.msg);
                    }else {
                        layer.msg(data.msg);
                    }
                }
            })
        })
    })
</script>

控制器

public function getsmscode(){
        require './Common/Class/aliyun-dysms-php-sdk/api_demo/SmsDemo.php';
		$tel = I('tel');
		if($tel){         
            $rand = rand(100000,999999);
             //print_r($smscode);exit;
             $data=[
                 'tel' =>$tel,
                 'rand'=>$rand,
                 'signName'=>'短信签名',
                 'code'=>'SMS_*********',
             ];
             $res =SmsDemo::sendSms($data);
             if($res){
                 $_SESSION['code'] = $rand;
                 $this->ajaxReturn(array('status' =>1, 'msg' => "发送成功"));
             }else{
                 $this->ajaxReturn(array('status' =>0, 'msg' => "发送失败"));
             }
		}
	}

链接:参考 https://www.likecs.com/show-204483715.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值