Thinkphp框架 -- 短信接口验证码

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

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

  视图层View

 1 <!doctype html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Ajax无刷新上传</title>
 6 </head>
 7 <script type="text/javascript" src="__PUBLIC__/js/jquery-1.10.2.min.js"></script>
 8
 9 <body>
10     <div>
11         请输入手机号码:<input type="text" name="phone" class="phone">
12     </div>
13     <div>
14         <a href="javascript:;" class="butphone">点击获取短信验证码</a>
15     </div>
16 </body>
17     <script type="text/javascript">
18
19         $(‘.butphone‘).click(function(){
20
21             var phone = $(‘.phone‘).val();//手机号码
22
23             $.post(
24
25                 "{:U(‘smsbao‘)}",//传递的方法
26
27                 {phone1:phone},//参数
28
29                 function (data){
30
31                     if(data == ‘1‘){
32                         alert(‘输入框不能为空‘);
33                     }else if(data == ‘2‘){
34                         alert(‘输入的值为非数字‘);
35                     }else{
36                         alert(data);
37                     }
38
39                     },
40                     ‘json‘
41                 )
42         })
43     </script>
44
45 </html>

  

  控制器层Controller

 1 <?php
 2     namespace Home\Controller;
 3     use Think\Controller;
 4     class IndexController extends Controller
 5     {
 6         //视图
 7         public function index()
 8         {
 9             $this->display();
10         }
11
12       //短信接口
13         public function smsbao()
14         {
15             $phonenum = trim( I(‘post.phone1‘) );//接收到的参数
16
17             //首先判断电话为不为空
18             if(empty($phonenum) ){
19
20                 $this->ajaxReturn(‘1‘);
21             }
22
23             //判断是否为数字
24             $boolphone = is_numeric($phonenum);
25
26             if($boolphone){
27
28                 $statusStr = array(
29                     "0"     => "短信发送成功",
30                     "-1" => "参数不全",
31                     "-2" => "服务器空间不支持,请确认支持curl或者fsocket,联系您的空间商解决或者更换空间!",
32                     "30" => "密码错误",
33                     "40" => "账号不存在",
34                     "41" => "余额不足",
35                     "42" => "帐户已过期",
36                     "43" => "IP地址限制",
37                     "50" => "内容含有敏感词"
38                     );
39                     $num = rand(100000, 999999);//设置随机数
40
41                     setcookie("numset", $num);//把值放入COOKIE中,关闭浏览器清除cookie;
42
43                     $smsapi = "http://api.smsbao.com/";
44
45                     $user = "asdf75054138"; //短信平台帐号
46
47                     $pass = md5("asdf75054138"); //短信平台密码
48
49                     $content="[Bug],来自四个火枪手的验证,验证码:".$num;//要发送的短信内容,随便设置
50
51                     $phone = $phonenum;//要发送短信的手机号码
52
53                     $sendurl = $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);//固定格式
54
55                     $result =file_get_contents($sendurl);//固定格式
56
57                     $this->ajaxReturn( $statusStr[$result] );//短信是否发送成功
58
59                 }else{
60                         $this->ajaxReturn( ‘2‘ );
61                 }
62
63             }
64     }

  

  各种效果图:

    

    

    

    

    

  附件

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

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

  

时间: 2024-08-04 18:12:03

Thinkphp框架 -- 短信接口验证码的相关文章

阿里大鱼短信接口 for Thinkphp

不得不说阿里云为创业者在起步时期提供了不少便利,短信接口不管是web应用还是APP都必不可少.大鱼一张口,这是要生吞其他小虾米的节奏啊,四分的价格很便宜了,现在注册会送60元代金券,时间不到一个月,也就是让你免费调试,短信发送效果很好,基本能够达到承诺的三秒,一般情况两三秒,具体效果还待检验,好了,直奔主题. 第一步:注册阿里大鱼账号:http://www.alidayu.com 第二步:进入<开发者控制台>--><应用管理>中创建应用,应用标签选择"阿里大鱼&qu

如何选择一家好的验证码短信接口服务商?

多年的行业经验及与客户沟通中所了解的一些信息反馈.现在总结出来 跟大家说一说,怎样去选择一家比较好的短信接口提供商. 公司网站/app想嵌入短信接口 发验证短信.去网上一搜几十家,每个网站的产品宣传.介绍都大同小异,挑了几家问问价格低至3,4分,高至7,8分.价格高的会说是验证码专用通道,但又去问问价格低的 也说是专用 这时在没使用过的情况下 价格低的完全占绝对优势 因为70%客户会选择价格便宜的.于是乎就开了帐号 充值使用了,用了3天,一个礼拜或者1-2个月 渐渐的问题开始多了,收不到 延迟厉

短信猫验证码接收解决方案(提供三款接口应用软件)

短信猫验证码方案介绍: 两个短信猫验证的应用场景: 1.网站验证码用户登录 目前在网络上各种网站.应用.平台登录都需要用到手机验证码,直接给用户手机发送验证码后才能进行登录等操作及大地提高了用户的安全性及降低了恶意注册的可能性. 2.网络营销账号注册 我们注册各类网站.APP.软件时均需要与用户手机号绑定才能使用相应的网站和软件功能,有这样一群以出售账号即通过专业的短信猫设备可大批量接收验证码的方式去注册海量账号从而提供给那些网络营销公司或个人,他们可拿来做营销宣传与推广,一个账号的价值不菲.

VB通过http调用验证码短信接口源码

通过验证码短信http调用接口,您可以很快速的在网站或者app中集成手机号验证功能,该源码只是核心代码,具体可以根据您的实际需求进行扩展. 该DEMO是VB通过http调用验证码短信接口源码: VERSION 5.00 Object = "{248DD890-BB45-11CF-9ABC-0080C7E7B78D}#1.0#0"; "Mswinsck.OCX" Begin VB.Form Form1 Caption = "Form1" Clien

Redis实践操作之—— 直播视频定时控制【TCP长连接框架(WorkerMan)+键空间通知的机制 ( Keyspace Notifications)+短信接口(API)】

一.思路梳理 同步直播视频到Redis 用户观看直播模板,点击直播按钮,检查是否有权限. 直播定时免费观看(免费观看10分钟),用户点击播放按钮开始,异步检查获取直播活动设置的免费观看时间(后台维护人员设置,Redis的hash存储信息),是否是直播. 是直播视频:判断该客户是否已经观看过了免费的20分钟时间, 没有看过,则获取该直播视频的免费时间根据活动ID,同时设置该直播视频的过期时间(只针对该用户自己哦),返回个模板,说:这个人可以观看的. 直播视频已经看过了,则不可以继续观看哦!嘻嘻..

聚合API-短信接口,THINKPHP整合聚合api短信接口

觉得发个短信验证码挺简单的,但是之前没写过,就想写一个看看,阿里大于的太贵了,只能用其他平台的数据接口, 第一步:聚合官网登录.注册,网址如下:https://www.juhe.cn/login(登录),https://www.juhe.cn/register(注册) 第二步:申请数据-短信api服务,网址如下:https://www.juhe.cn/docs/api/id/54,申请数据, 申请的时候送10条数据,如果想以后也想用,可以选择现在特价的9元300条数据. 第三步:进入个人中心,我

106短信简单描述与验证码短信接口介绍

如何调用 106短信验证码 接口地址 怎么样找短信公司要106短信验证码接口测试费用 一.什么是106端口短信: 106短信通道是指仅中国移动.中国联通提供的网关短信平台,实现与客户指定号码进行短信批量发送和自定义发送的目的,即你收到的短信在手机上以106开头的短信称为106短信. 短信通道的分类国内短信通道主要分为:106通道.电信虚拟短信通道:电话区号(类似021)的.1069三网合一企业实名制通,106通道一般显示为:106通道(10657移动,联通10655,电信10659).全网移动企

php短信接口,免认证限制少的接口,手机短信,短信验证码

下面介绍一下kewail的短信接口,链接:https://www.kewail.com/ // Works well with php5.3 and php5.6. namespace Kewail\Sms; require_once('SmsSenderUtil.php'); class SmsSingleSender {var $url;var $accesskey;var $secretkey;var $util; function __construct($accesskey, $sec

THINKPHP3.2.3增加阿里云短信接口思路整理

https://help.aliyun.com/document_detail/55359.html?spm=5176.product44282.4.7.O4lc1n 阿里云短信服务地址,感冒的下载看看 1 文件存放位置的问题 阿里云的短信接口 属于第三方扩展 所以文件放在 thinkphp\vendor\ 比如起名message 把SDK的文件都存到里面 2 把实现功能的代码 写好 放在message目录 不过注意文件的路径 代码里面的文件头 引用的文件地址用类似的 require_once