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阿里大鱼短信验证的更多相关文章

  1. SpringBoot、ActiveMQ整合阿里大鱼-----短信服务

    3.短信微服务 3.1需求分析 构建一个通用的短信发送服务(独立于优乐选的单独工程),接收activeMQ的消息(MAP类型)  消息包括手机号(mobile).短信模板号(template_code ...

  2. 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo

    Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...

  3. 功能:使用QQ号登陆,并加上微信和短信提醒,是否增量备份可选,阿里大鱼短信发送开发与测试,聚合数据(用JSON发短信,比较清楚)

    微博就可以,所以其它软件也可以http://desktop.weibo.com/ http://blog.csdn.net/jueblog/article/details/14497181http:/ ...

  4. 阿里大鱼短信接口整合Tp3.2.3开发整理

    阿里大鱼 http://www.alidayu.com/ 的短信接口总体是不错的,别安驹个人认为不管是从性价比还是稳定性上都是跟同类的短信接口好些,毕竟是大公司的东西不会差到哪去.下面把之前开发的短信 ...

  5. 阿里云短信验证~JAVA后台

    maven :中的 pom.xml添加 <dependency> <groupId>com.aliyun</groupId> <artifactId>a ...

  6. 阿里云短信验证_基于阿里云OpenAPI实现

    阿里云短信服务 背景简介: 短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单 ...

  7. Springboot下实现阿里云短信验证功能(含代码)

    Springboot下实现阿里云短信验证功能 一 开通阿里云短信服务 阿里云官网注册登录 找到短信服务并开通 打开短信服务的管理台 在国内消息那栏中添加签名管理和模板管理(按照格式要求去写) 在右上角 ...

  8. Thinkphp5使用阿里大于短信验证

    现在各种平台登录验证很多时候会使用短信验证,快捷安全,有很多平台提供短信验证服务,相比较而言阿里大于价格比较便宜,快捷,所以在在千锋日常的php教学中多以此为例来说明短信验证的使用.下面我们在tp5中 ...

  9. 阿里云短信验证解决方案(java版)(redis存储)

    最近搞了一个互联网项目的注册,需要写一个手机号验证(由于之前没有轮子,只能自己摸索了); 1:基本思路: 1>购买了阿里云短信服务->下载阿里云短信发送demo(java版); 2> ...

随机推荐

  1. Js跨域小总结

    教程 以下的例子包含的文件均为为http://www.a.com/a.html.http://www.a.com/c.html 与http://www.b.com/b.html ,要做的都是从a.ht ...

  2. asp.net中c#求百分比

    double m= 50;double n= 100; Response.Write((m/ (m+ n)).ToString("0%"));Response.Write((m/ ...

  3. WPF的两棵树与绑定

    原文:WPF的两棵树与绑定   先建立测试基类 public class VisualPanel : FrameworkElement { protected VisualCollection Chi ...

  4. 44个 Javascript 变态题解析——分分钟让你怀疑人生

    原题来自: http://javascript-puzzlers.herokuapp.com/ 第1题 ["1", "2", "3"].ma ...

  5. 从贝叶斯模型(Bayes)到生成模型(Generative models)(生成式分类器,generative classifier)

    0. 基于贝叶斯公式的生成式分类器 生成式分类器(generative classifier)即是已知类别得样本: p(y=c|x,θ)∝p(x|y=c,θ)p(y=c|θ) p(x|y=c,θ) 称 ...

  6. QT 内存文件映射就是如此简单!

    QFile file(fileName); file.open(QIODevice::ReadWrite ); uchar* fpr = file.map(0, file.size());//映射文件 ...

  7. WPF异常捕获,并使程序不崩溃!

    原文:WPF异常捕获,并使程序不崩溃! 在.NET中,我们使用try-catch-finally来处理异常.但,当一个Exception抛出,抛出Exception的代码又没有被try包围时,程序就崩 ...

  8. JDK10下安装Eclipse photon 提示Java for Windows Missing

    这两天把服务器清理了一下,操作系统也重新装了,没办法啊,就是喜欢倒腾...在重新安装软件的时候,我又到各个官网去看了软件的最新版本,其中就去了JDK和Eclipse的官网溜达了一圈. 很久没有更新过自 ...

  9. WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar)

    原文:WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar)      本篇将开始介绍标签工具栏的开发内容,标签工具栏可以说是Ribbon 的核心部分,应用程序所有的功能特性都会集中 ...

  10. ios 调用系统发短信以及打电话功能

    先介绍一种最简单的方法: 调用打电话功能 [[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"tel://100 ...