PHP阿里大鱼短信验证
PHP阿里大鱼短信验证
第一步
登陆阿里大于注册账号,在用户管理中心创建应用,确定AppKEY和App Secret还有配置签名
第二步
在应用管理中选择SDK下载,或者直接点击http://download.csdn.NET/detail/s371795639/9695983下载,免费的哦亲
把下载好的资源解压放到ThinkPHP\Library\Vendor目录下如图
并不是所有的php文件都需要,就用如图所示Alidayu文件夹下那几个php文件,把Alidayu里面的php文件分别打开,在开始的一行添加代码(如果你下载的来自我发的链接,那就没必要添加这个代码了,因为我添加过了)
namespace Vendor\Alidayu;
目的是为了在调用的时候不至于引入失败
第三步
可以写HTML了
<div class="form-group">
<div class="field field-icon-right">
<input type="text" id="admin" class="input" name="admin" placeholder="用户名" data-validate="required:请填写用户名,length#>=5:用户长度不符合要求" />
<span class="icon icon-user"></span>
</div>
</div>
<div class="form-group">
<div class="field field-icon-right">
<input id="mobile" type="tel" class="input" name="mobile" placeholder="手机号码" onblur="checkmobile(this)" />
<span class="icon icon-mobile"></span>
</div>
</div>
<span class="x4" style="text-align: center;vertical-align: middle">
<button id="sendmsg">获取验证码</button>
</span>
第四步
写入JQ代码(功能是,发送验证码后倒计时,并且POST传递后台,后台返回的数据0,1,2分别对应不同的功能)这段代码是参考别人的
<script >
/*-------------------------------------------*/
var InterValObj; //timer变量,控制时间
var count = 60; //间隔函数,1秒执行
var curCount;//当前剩余秒数
var code = ""; //验证码
var codeLength = 6;//验证码长度
$(function () {
$('#sendmsg').click(function () {
$.ajax({
type: "POST",
url: "/User/folder/child/obtainyzm",
data: "admin=" + $('#admin').val()+"&mobile="+$("#mobile").val() ,
success: function (result) {
if(result==0){
curCount = count;
//设置button效果,开始计时
$("#sendmsg").css("background-color", "LightSkyBlue");
$("#sendmsg").attr("disabled", "true");
$("#sendmsg").val("获取" + curCount + "秒");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
// alert("验证码发送成功,请查收!");
}
if(result==1){
alert("用户名和手机号不匹配!");
}
if(result==2){
alert("用户名不存在!");
}
},
dataType: 'json'
})
})
})
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#sendmsg").removeAttr("disabled");//启用按钮
$("#sendmsg").css("background-color", "");
$("#sendmsg").val("重发验证码");
code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效
}
else {
curCount--;
$("#sendmsg").val("获取" + curCount + "秒");
}
}
</script>
上面有两个参数admin和mobile分别代表用户名和手机号码。
第五步
写入功能代码
public function obtainyzm(){
$mobile = $_POST['mobile'];//获取手机号码
$admin =$_POST['admin'];//获取用户名
$user = M('db_admin')->where(array('admin'=>$admin))->find();
/************引入*************/
Vendor('Alidayu.TopClient');
Vendor('Alidayu.AlibabaAliqinFcSmsNumSendRequest');
Vendor('Alidayu.ResultSet');
Vendor('Alidayu.RequestCheckUtil');
$c = new \Vendor\Alidayu\TopClient;
$req = new \Vendor\Alidayu\AlibabaAliqinFcSmsNumSendRequest;
/*************配置***************/
$code = randCode(4);//随机验证码
$c->appkey = '23******';
$c->secretKey = '6f73a******************';
$req->setSmsType("normal");
$req->setSmsFreeSignName("xx的测试");
$req->setSmsParam("{code:'$code'}");
$req->setRecNum("$mobile");
$req->setSmsTemplateCode("SMS_3******");
if($user)
{
if($user['mobile'] == $mobile)
{
/*************发送验证码短信,并把验证码作为新密码保存到服务器上***************/
//$c->execute($req); //不要开启,开启后就会有短信到账,一次几分钱..在服务器上看新密码就好
$newpwd['pwd'] = md5($code);
D('db_admin')->where(array('admin'=>$user['admin']))->save($newpwd);
$this->ajaxreturn(0);//用户名密码匹配
}
else
{
$this->ajaxreturn(1);//用户名和手机号不匹配
}
}
else
{
$this->ajaxreturn(2); //用户名不存在
}
$this->display();
}//获取验证码
谢谢观看,有什么不懂的可以留言~
http://blog.csdn.net/s371795639/article/details/53381274
PHP阿里大鱼短信验证的更多相关文章
- SpringBoot、ActiveMQ整合阿里大鱼-----短信服务
3.短信微服务 3.1需求分析 构建一个通用的短信发送服务(独立于优乐选的单独工程),接收activeMQ的消息(MAP类型) 消息包括手机号(mobile).短信模板号(template_code ...
- 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo
Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
- 功能:使用QQ号登陆,并加上微信和短信提醒,是否增量备份可选,阿里大鱼短信发送开发与测试,聚合数据(用JSON发短信,比较清楚)
微博就可以,所以其它软件也可以http://desktop.weibo.com/ http://blog.csdn.net/jueblog/article/details/14497181http:/ ...
- 阿里大鱼短信接口整合Tp3.2.3开发整理
阿里大鱼 http://www.alidayu.com/ 的短信接口总体是不错的,别安驹个人认为不管是从性价比还是稳定性上都是跟同类的短信接口好些,毕竟是大公司的东西不会差到哪去.下面把之前开发的短信 ...
- 阿里云短信验证~JAVA后台
maven :中的 pom.xml添加 <dependency> <groupId>com.aliyun</groupId> <artifactId>a ...
- 阿里云短信验证_基于阿里云OpenAPI实现
阿里云短信服务 背景简介: 短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单 ...
- Springboot下实现阿里云短信验证功能(含代码)
Springboot下实现阿里云短信验证功能 一 开通阿里云短信服务 阿里云官网注册登录 找到短信服务并开通 打开短信服务的管理台 在国内消息那栏中添加签名管理和模板管理(按照格式要求去写) 在右上角 ...
- Thinkphp5使用阿里大于短信验证
现在各种平台登录验证很多时候会使用短信验证,快捷安全,有很多平台提供短信验证服务,相比较而言阿里大于价格比较便宜,快捷,所以在在千锋日常的php教学中多以此为例来说明短信验证的使用.下面我们在tp5中 ...
- 阿里云短信验证解决方案(java版)(redis存储)
最近搞了一个互联网项目的注册,需要写一个手机号验证(由于之前没有轮子,只能自己摸索了); 1:基本思路: 1>购买了阿里云短信服务->下载阿里云短信发送demo(java版); 2> ...
随机推荐
- 微信小程序实现城市定位:获取当前所在的国家城市信息
微信小程序中,我们可以通过调用wx.getLocation()获取到设备当前的地理位置信息,这个信息是当前位置的经纬度.如果我们想获取当前位置是处于哪个国家,哪个城市等信息,该如何实现呢? 微信小程序 ...
- 生成动态Lambda表达式1
SqlDataReader生成动态Lambda表达式 上一扁使用动态lambda表达式来将DataTable转换成实体,比直接用反射快了不少.主要是首行转换的时候动态生成了委托. 后面的转换都是直接调 ...
- 添加cordova-plugin-file-opener2后,打包出错
原文:添加cordova-plugin-file-opener2后,打包出错 报错如下: * What went wrong: Execution failed for task ':app:proc ...
- Azure Messaging-ServiceBus Messaging
Azure Messaging-ServiceBus Messaging 上篇博文中我们介绍了Azure Messaging的重复消息机制.At most once 和At least once. A ...
- 使用JScript脚本批量修改VC工程设置
作者:朱金灿 来源:http://blog.csdn.net/clever101 很多时候升级了第三方库,需要对很多工程修改设置.在VS中按住Ctrl键确实可以多选工程,但通过这样做也有麻烦的地方:一 ...
- 在.net MVC项目中使用ajax进行数据验证
1.首先要在网页引入应该引入的js文件 在这里回顾一下在模板页里面挖坑的技术 2.在html中使用html辅助方法 3.验证模型 4验证方法
- 微服务实践之路--RPC
微服务实践之路--RPC 重点来了,本文全面阐述一下我们的RPC是怎么实现并如何使用的,跟Kubernetes和Openstack怎么结合. 在选型一文中说到我们选定的RPC框架是Apache Thr ...
- c#调用ffmpeg嵌入srt/ass字幕提示Cannot load default config file...
c#调用ffmpeg嵌入srt/ass字幕提示 Fontconfig error: Cannot load default config file[Parsed_subtitles_0 @ 00000 ...
- (记录)mysql分页查询,参数化过程的坑
在最近的工作中,由于历史遗留,一个分页查询没有参数化,被查出来有sql注入危险,所以对这个查询进行了参数化修改. 一看不知道,看了吓一跳,可能由于种种原因,分页查询sql是在存储过程中拼接出来的,wh ...
- JavaScript:undefined And null差异
班吃饭的时候,同事偶然问了一个问题:undefined和null究竟有什么差别?无法回答,回去查阅相关文档,算了有了一个了解,做相关的总结.在開始之前,请看例如以下代码,算是抛出这个问题: conso ...