laravel框架手机发送验证码

举报
lxw1844912514 发表于 2022/03/27 03:03:48 2022/03/27
【摘要】 https://blog.csdn.net/sunny_lg/article/details/52471225 现在登录注册时 我们的验证方法 不在单一化  手机发送验证码 已经成为常态 让我们 一起来实现以下吧 ! 首先我们要先找短信的接口 我用的是  云信使   这里是他的地址h...

https://blog.csdn.net/sunny_lg/article/details/52471225

现在登录注册时 我们的验证方法 不在单一化  手机发送验证码 已经成为常态 让我们 一起来实现以下吧 !

首先我们要先找短信的接口 我用的是  云信使   这里是他的地址http://sms.sms.cn/login.php?cgh 大家可以去注册一下

1.进入视图

   


    
  1. <ul class="register">
  2. <li>
  3. <label>手机号:</label>
  4. <input class="ipt-box tel-bg" value="" id="regi_mobile" type="text">
  5. </li>
  6. <li>
  7. <label>验证码:</label>
  8. <input class="code" value="六位数字验证码" id="validatecode" type="text">
  9. <input class="code" οnclick='duanxin()' value="获取验证码" type="button">
  10. </li>
  11. </ul>

 


    
  1. <script src="js/jquery.js"></script>
  2. <script>
  3. function duanxin() {
  4. //获取手机ID
  5. var iphone = $("#regi_mobile").val();
  6. $.ajax({
  7. url: 'registers',
  8. data: {'iphone': iphone},
  9. type: "GET",
  10. dataType: "Json",
  11. success: function (msg) {
  12. if (msg['stat'] == '100') {
  13. alert('短信发送成功了');
  14. } else {
  15. alert('短信发送失败了');
  16. }
  17. }
  18. });
  19. }
  20. </script>

2. 路由

Route::any('registers','LoginController@loginDo');

    

3.进入控制器


    
  1. public function loginDo()
  2. {
  3. $iphone = $_GET['iphone'];
  4. $code = rand(1000, 9999);
  5. setcookie('code', $code, time() + 600);
  6. //把URL地址改成你自己就好了,把手机号码和信息模板套进去就行
  7. $url = 'http://api.sms.cn/sms/?=send&uid=XXX&pwd=61dfa5a45c06bf691767d35bcb197595&template=384859&mobile=' . $iphone . '&content={"code":"' . $code . '"}'
  8. $data = array();
  9. $method = 'GET';
  10. $res = $this->curlPost($url, $data, $method);
  11. echo $res;
  12. }
  13. /*curlpost传值*/
  14. public function curlPost($url, $data, $method)
  15. {
  16. $ch = curl_init(); //1.初始化
  17. curl_setopt($ch, CURLOPT_URL, $url); //2.请求地址
  18. curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);//3.请求方式
  19. //4.参数如下
  20. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);//https
  21. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  22. curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');//模拟浏览器
  23. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  24. curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
  25. curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept-Encoding: gzip, deflate'));//gzip解压内容
  26. curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
  27. if ($method == "POST") {//5.post方式的时候添加数据
  28. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  29. }
  30. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  31. $tmpInfo = curl_exec($ch);//6.执行
  32. if (curl_errno($ch)) {//7.如果出错
  33. return curl_error($ch);
  34. }
  35. curl_close($ch);//8.关闭
  36. return $tmpInfo;
  37. }

 

 

4. 这样就好了  大家快测试一下吧!

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100027905

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。