php 阿里大鱼手机验证码 ajax具体实现

来源:互联网 发布:tensorflow不好用 编辑:程序博客网 时间:2024/05/01 14:30

效果图






1.阿里大鱼开启功能

    (1)利用淘宝登录阿里大鱼, 免去身份验证。

    (2)打开阿里大鱼管理中心


    (3)添加一个短信模板


   (4)添加短信签名,这个在以后都是会用到的


   (5)创建一个应用


   (6) 下载sdk 我的是php的所以就下载了一个php的sdk

    

    (7)php的  将压缩包解压

2  写前台和后台部分

     一共有三个文件 (jquary那个是jquary的框架文件, 自己在网上下一个就好了,但是名字记得不要改)

(1)前面的 index.php  (复制代码后保存到自己建的问价就好了, 记得名字不要变)

(2)发送验证码的 send_check_code.php ( 复制代码后保存到自己建的问价就好了, 记得名字不要变)

(3)jquery.min.js    jquary框架文件

向如下图


(一).index.php的代码

<script src="jquery.min.js" type="text/javascript"></script>  <input type="text" id="mobel"/><input type="button" id="btn" value="免费获取验证码" /><script type="text/javascript">var wait=5;function time(o) {    if(wait == 5){var mobel = document.getElementById('mobel').value;$.ajax({     type: "POST", //用POST方式传输            url: 'send_check_code.php?a='+mobel, //目标地址.     //data: "dealType=" + dealType +"&uid=" + uid + "&code=" + code,                 dataType: "json",   success: function(data){  if(data.msgid==1){//成功的处理  alert(data.html);  }  else if(data.msgid==2){//失败的处理  alert(data.html);  }  else{  alert(data.html);  }              }           });}        if (wait == 0) {            o.removeAttribute("disabled");                       o.value="免费获取验证码";            wait = 5;        } else { // www.jbxue.com                o.setAttribute("disabled", true);            o.value="重新发送(" + wait + ")";            wait--;            setTimeout(function() {                time(o)            },            1000)        }    }document.getElementById("btn").onclick=function(){time(this);}</script>


(二) send_check_code.php 的代码

<?php       function send_check_code($code, $mob){include "alidayu\TopSdk.php";date_default_timezone_set('Asia/Shanghai'); $c = new TopClient;$appkey = "-------";  //这里是我的应用key$secret = "----------------------------"; //这里是我的密匙 在第五步应用创建好之后可以看到$c->appkey = $appkey;$c->secretKey = $secret;   $req = new AlibabaAliqinFcSmsNumSendRequest;/*       公共回传参数,在“消息返回”中会透传回该参数; 举例:用户可以传入自己下级的会员ID,在消息返回时,*/$req->setExtend("123456");    /*短信类型,传入值请填写normal */   $req->setSmsType("normal");  /*    短信签名,传入的短信签名必须是在阿里大于“管理中心-短信签名管理”中的可用签名。 */ $req->setSmsFreeSignName("民院论坛");   //这里根据自己的做调整, 不调整会报错/*       短信模板变量,传参规则{"key":"value"},*/$req->setSmsParam("{\"code\":\"$code\",\"product\":\"民院论坛\"}"); //一样, 可以调整。 这里不调整不会报错 /*短信接收号码。支持单个或多个手机号码,传入号码为11位手机号码,*/$req->setRecNum("$mob");   $req->setSmsTemplateCode("SMS_25260302");  $resp = $c->execute($req);//echo "<pre />";//var_dump($resp);if($resp->result->success){echo json_encode(array('msgid'=>"1",'html'=>"发送成功"));}else{echo json_encode(array('msgid'=>"2",'html'=>"发送失败"));}}$mobb = $_GET['a'];$coding = rand(100000, 1000000);send_check_code("$coding", "$mobb");?>







添加短信模板 短信签名  应用图



0 0