觉得发个短信验证码挺简单的,但是之前没写过,就想写一个看看,阿里大于的太贵了,只能用其他平台的数据接口,
第一步:聚合官网登录、注册,网址如下:https://www.juhe.cn/login(登录),https://www.juhe.cn/register(注册)
第二步:申请数据-短信api服务,网址如下:https://www.juhe.cn/docs/api/id/54,申请数据, 申请的时候送10条数据,如果想以后也想用,可以选择现在特价的9元300条数据。
第三步:进入个人中心,我的数据,选择短信API服务,进行认证,待认证完成即可。
第四步:进入个人中心,我的数据,选择短信API服务,选择模板,个人选择“
- 添加自定义模板 (*由于您是未实名或个人用户,暂只能使用系统固定的模板和无变量的模板)”,设置短信模板。待审核成功即可。
”
第五步:写代码
聚合提供实例代码位置:https://code.juhe.cn/docs/168
请记住以下几个数据:AppKey,模板ID
【前端代码】
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="{:U(‘**‘/**)}" method="post"> <input type="text" name="userphone" required="required"> <input type="submit" value="提交"> </form> </body> </html>
【PHP代码】
<?php namespace Home\Controller; use Think\Controller; class DxController extends Controller{ //短信接口 public function send(){ if(IS_POST){ $phone = I(‘post.userphone‘);
//此处应该有验证 header(‘content-type:text/html;charset=utf-8‘); $sendUrl = ‘http://v.juhe.cn/sms/send‘; //短信接口的URL $code = rand(0001,9999);//验证码生成格式,请生成4-8位,数字或字母随机组合 $smsConf = array( "key" => "************", //您申请的APPKEY "mobile" => "$phone", //接受短信的用户手机号码 "tpl_id" => "*****", //您申请的短信模板ID,根据实际情况修改 "tpl_value" => "#code#=".$code."&#company#=聚合数据"//您设置的模板变量,根据实际情况修改 ); $content = $this->juhecurl($sendUrl,$smsConf,1); //请求发送短信 if($content){ $result = json_decode($content,true); $error_code = $result[‘error_code‘]; if($error_code == 0){ //状态为0,说明短信发送成功 echo "短信发送成功,短信ID:".$result[‘result‘][‘sid‘]; }else{ //状态非0,说明失败 $msg = $result[‘reason‘]; echo "短信发送失败(".$error_code."):".$msg; } }else{ //返回内容异常,以下可根据业务逻辑自行修改 echo "请求发送短信失败"; } }else{ $this->display(); } } //curl请求 public function juhecurl($url,$params=false,$ispost=0){ $httpInfo = array(); $ch = curl_init(); curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_USERAGENT , ‘Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22‘ ); curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 ); curl_setopt( $ch, CURLOPT_TIMEOUT , 30); curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true ); if( $ispost ){ curl_setopt( $ch , CURLOPT_POST , true ); curl_setopt( $ch , CURLOPT_POSTFIELDS , $params ); curl_setopt( $ch , CURLOPT_URL , $url ); }else{ if($params){ curl_setopt( $ch , CURLOPT_URL , $url.‘?‘.$params ); }else{ curl_setopt( $ch , CURLOPT_URL , $url); } } $response = curl_exec( $ch ); if ($response === FALSE) { //echo "cURL Error: " . curl_error($ch); return false; } $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE ); $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) ); curl_close( $ch ); return $response; } }
第六步:短信验证码验证等操作请自行填写,谢谢!
------------------------转载请注明出处-----------------------
-----------------------QQ:297760026-----------------------
-----------------------www.sl95.cn -----------------------