I chose Yunpian.com among many third-party SMS service providers. I will also try my best to use the simplest way to help developers solve the SMSVerification codefunction module implementation.
Before again, I also referred to most online blogs, etc. Most of them moved the demo of Yunpian.com intact. For me, a front-end person, I had no clue at all, so I I will explain how to operate it in detail and provide my source code.
My business process is to click thebuttonto send the verification code, trigger an ajax requestevent, send the mobile phone number to the background, and the background generates the verification code and sends it to mobile phone and return this verification code to the front desk for verification of the verification code.
The requested php backend code is as follows
post.php
';print_r($array); // 发送短信 $data=array('text'=>$text,'apikey'=>$apikey,'mobile'=>$mobile); $json_data = send($ch,$data); $array = json_decode($json_data,true); // echo '';print_r($array); // 发送模板短信 // 需要对value进行编码 $data = array('tpl_id' => '1', 'tpl_value' => ('#code#'). '='.urlencode($num). '&'.urlencode('#company#'). '='.urlencode('蒙羊羊'), 'apikey' => $apikey, 'mobile' => $mobile); // print_r ($data); $json_data = tpl_send($ch,$data); $array = json_decode($json_data,true); echo $num; // 发送语音验证码 // $data=array('code'=>$num,'apikey'=>$apikey,'mobile'=>$mobile); // $json_data =voice_send($ch,$data); // $array = json_decode($json_data,true); // echo $num; // 发送语音通知,务必要报备好模板 /* 模板: 课程#name#在#time#开始。 最终发送结果: 课程深度学习在14:00开始 */ $tpl_id = 'xxxxxxx'; //修改为你自己后台报备的模板id $tpl_value = urlencode('#time#').'='.urlencode($num).'&'.urlencode('#name#').'='.urlencode('蒙羊羊'); $data=array('tpl_id'=>$tpl_id,'tpl_value'=>$tpl_value,'apikey'=>$apikey,'mobile'=>$mobile); $json_data = notify_send($ch,$data); $array = json_decode($json_data,true); // echo $num; curl_close($ch); /************************************************************************************/ //获得账户 function get_user($ch,$apikey){ curl_setopt ($ch, CURLOPT_URL, 'https://sms.yunpian.com/v2/user/get.json'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('apikey' => $apikey))); $result = curl_exec($ch); $error = curl_error($ch); checkErr($result,$error); return $result; } function send($ch,$data){ curl_setopt ($ch, CURLOPT_URL, 'https://sms.yunpian.com/v2/sms/single_send.json'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($ch); $error = curl_error($ch); checkErr($result,$error); return $result; } function tpl_send($ch,$data){ curl_setopt ($ch, CURLOPT_URL, 'https://sms.yunpian.com/v2/sms/tpl_single_send.json'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($ch); $error = curl_error($ch); checkErr($result,$error); return $result; } function voice_send($ch,$data){ curl_setopt ($ch, CURLOPT_URL, 'http://voice.yunpian.com/v2/voice/send.json'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($ch); $error = curl_error($ch); checkErr($result,$error); return $result; } function notify_send($ch,$data){ curl_setopt ($ch, CURLOPT_URL, 'https://voice.yunpian.com/v2/voice/tpl_notify.json'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($ch); $error = curl_error($ch); checkErr($result,$error); return $result; } function checkErr($result,$error) { if($result === false) { echo 'Curl error: ' . $error; } else { //echo '操作完成没有任何错误'; } } ?>Copy after login
This php backend was modified by me on the official demo provided,DeleteThe voice verification function is disabled, only SMS verification is retained, and only the four-digit verification code is retained in the data returned to the front-end to facilitate the front-end verification of the verification code.
The official original demo link is as follows...Link
index.html
The following code is to click and send an ajax request, and save the requested verification code to localStorage
$.ajax({ type: "post", url: "post.php", //后台代码文件名 data: { mobile:$('#phone').val()//获取输入的手机号 }, // dataType: "json", success:function(data){ console.log(data); layer.msg('验证码发送成功,请注意查收!'); localStorage.setItem('code', JSON.stringify(data)) }, error:function(err){ console.log(err); } });
Verification code verification
var code = JSON.parse(localStorage.getItem('code')) if($('#code').val() != code ){ layer.msg('验证码输入错误'); return false; }
I believe you have mastered the method after reading these cases. For more exciting information, please pay attention to other related articles on the php Chinese website!
Related reading:
Ajax asynchronous request technology explained with examples
PHP large traffic optimization?
php custom function to generate Cartesian product
The above is the detailed content of How to use php to send SMS verification code. For more information, please follow other related articles on the PHP Chinese website!