php发送短信验证码完成注册功能


短信验证码注册,很简单,用的是  云通讯的短信系统(收费的,不过有测试的api给我们做测试)。好了,不多说,进入正题。

 1、收到到云通讯短信系统注册账号,然后下载他们的封装好的短信api接口代码,解压,然后找到CCPRestSDK.php文件SendTemplateSMS.php文件,将其拉到根目录文件夹里。

2、打开SendTemplateSMS.php文件,首先注意include_once('./CCPRestSDK.php'),千万别包含错路径了,将云通讯给的测试主账号,主账号Token,应用ID填到这三个变量中。

3、创建sendMessage.html页面(此处也没做过多的安全过滤)

<span style="font-family: 'Microsoft YaHei'; font-size: 16px;"><!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Index</title>
<script type="text/javascript" src="jquery.min.js"></script>
</head>
   
<body>
  <form action="reg.php" method="post">
    手机号:<input type="text" name="tel" id="tel"><br>
    验证码:<input type="text" name="verify" id=""><span><button id="btn" type="button">免费发送验证码</button></span><br>
    <input type="submit" name="" value="注册"> 
  </form>
  <script type="text/javascript">
    $('#btn').click(function(){
      var tel = $.trim($('#tel').val());
      $.post('SendTemplateSMS.php', {'tel':tel},function(res){
        if (res) {
          alert('发送成功');
        } else {
          alert('发送失败');
        }
      });
    });
  </script>
</body>
</html> 
</span>

4、输入手机号  点击免费发送验证码  ,查看发送成功了

 5、在SendTemplateSMS.php文件里已经写好了手机号然后进行处理的代码

<span style="font-family: 'Microsoft YaHei'; font-size: 16px;">  $tel = $_POST['tel'];
  $res = sendTemplateSMS($tel, array($verify, 2),"1");  //$verify是所包含的verify.php文件里动态生成的四位数字验证码变量,生成时已将验证码存于SESSION里 ,到提交验证码时用于验证判断
  if ($res) {
    echo '1';
  } else {
    echo '0';
  }
</span>

6、如果不出意外,手机会收到四位数字的验证码,然后输入验证码,将其提交到reg.php文件

7、reg.php文件进行验证码正确与否进行逻辑验证*(我这只是做实验,所以没做多少安全过滤处理)

<span style="font-family: 'Microsoft YaHei'; font-size: 16px;"><?php
  session_start();
 
  $tel = $_POST['tel'];
  $ver = trim($_POST['verify']);
 
  if ( $ver == $_SESSION['verify']) {
    echo '验证码正确';
  } else {
    echo '验证码有误';
  }
 
 ?>
</span>

8、结果输出验证码正确

 整个验证码验证逻辑就这么简单,希望能够帮助大家顺利的完成短信验证码验证实现注册功能。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3