• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    thinkPHP框架实现的短信接口验证码功能示例

    本文实例讲述了thinkPHP框架实现的短信接口验证码功能。分享给大家供大家参考,具体如下:

    我用的是一款名叫 短信宝 的应用,新注册的用户可以免费3条测试短信,发现一个BUG,同个手机可以无限注册,自己玩玩还是可以的。

    里面的短信接口代码什么信息都没有,感觉看得不是很明白,自己测试了一遍,可以用,直接调用就可以的,如果要用到项目中还有很多细节要处理,比如 设置一个验证码的存活时间,还有点击按钮每隔一分钟才能按一次,还有判断这个用户发的短信另一个用户能不能用,以后有时间再接下去做,现在先来个简易版的

    视图层View

    !doctype html>
    html lang="en">
    head>
      meta charset="UTF-8">
      title>Ajax无刷新上传/title>
    /head>
    script type="text/javascript" src="__PUBLIC__/js/jquery-1.10.2.min.js">/script>
    body>
      div>
        请输入手机号码:input type="text" name="phone" class="phone">
      /div>
      div>
        a href="javascript:;" rel="external nofollow" class="butphone">点击获取短信验证码/a>
      /div>
    /body>
      script type="text/javascript">
        $('.butphone').click(function(){
          var phone = $('.phone').val();//手机号码
          $.post(
            "{:U('smsbao')}",//传递的方法
            {phone1:phone},//参数
            function (data){
              if(data == '1'){
                alert('输入框不能为空');
              }else if(data == '2'){
                alert('输入的值为非数字');
              }else{
                alert(data);
              }
              },
              'json'
            )
        })
      /script>
    /html>
    
    

    控制器层Controller

    ?php
      namespace Home\Controller;
      use Think\Controller;
      class IndexController extends Controller 
      {
        //视图
        public function index()
        {
          $this->display();
        }
        //短信接口 
        public function smsbao()
        {  
          $phonenum = trim( I('post.phone1') );//接收到的参数
          //首先判断电话为不为空
          if(empty($phonenum) ){
            $this->ajaxReturn('1');
          }
          //判断是否为数字
          $boolphone = is_numeric($phonenum);
          if($boolphone){
            $statusStr = array(
              "0"   => "短信发送成功",
              "-1" => "参数不全",
              "-2" => "服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!",
              "30" => "密码错误",
              "40" => "账号不存在",
              "41" => "余额不足",
              "42" => "帐户已过期",
              "43" => "IP地址限制",
              "50" => "内容含有敏感词"
              );
              $num = rand(100000, 999999);//设置随机数
              setcookie("numset", $num);//把值放入COOKIE中,关闭浏览器清除cookie;
              $smsapi = "http://api.smsbao.com/";
              $user = "asdf75054138"; //短信平台帐号
              $pass = md5("asdf75054138"); //短信平台密码
              $content="[Bug],来自四个火枪手的验证,验证码:".$num;//要发送的短信内容,随便设置
              $phone = $phonenum;//要发送短信的手机号码
              $sendurl = $smsapi."sms?u=".$user."p=".$pass."m=".$phone."c=".urlencode($content);//固定格式
              $result =file_get_contents($sendurl);//固定格式
              $this->ajaxReturn( $statusStr[$result] );//短信是否发送成功
            }else{
                $this->ajaxReturn( '2' );
            }
          }
      }
    
    

    各种效果图:

    附件

    短信宝url:http://www.cocsms.com/

    直接注册一个帐号,弹出让你用一条短信测试的不要测试,不然会损失一条。

    更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • ThinkPHP5.1验证码功能实现的示例代码
    • ThinkPHP5&5.1实现验证码的生成、使用及点击刷新功能示例
    • thinkphp5.1验证码及验证码验证功能的实现详解
    • tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
    • thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法
    • thinkPHP实现的验证码登录功能示例
    • 详解ThinkPHP3.2.3验证码显示、刷新、校验
    • thinkPHP中验证码的简单实现方法
    • thinkphp自带验证码全面解析
    • Thinkphp极验滑动验证码实现步骤解析
    上一篇:thinkPHP3.2.2框架行为扩展及demo示例
    下一篇:ThinkPHP5.0 图片上传生成缩略图实例代码说明
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    thinkPHP框架实现的短信接口验证码功能示例 thinkPHP,框架,实现,的,短信,