• 实现短信验证码注册


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

     

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

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

     

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

    <!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>	
    

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

     

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

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

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

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

    <?php 
    	session_start();
    
    	$tel = $_POST['tel'];
    	$ver = trim($_POST['verify']);
    
    	if ( $ver == $_SESSION['verify']) {
    		echo '验证码正确';
    	} else {
    		echo '验证码有误';
    	}
    
     ?>
    

    8、结果输出验证码正确

     

    整个验证码验证逻辑就这么简单,短信验证是要收钱的,这个有钱的公司一般都会用短信验证,够安全,而屌丝公司可以用邮箱验证码验证,下次再写个邮箱验证码验证。

     

  • 相关阅读:
    Go反射原理
    并发控制--context篇
    Go并发控制--WaitGroup篇
    Go依赖管理--module
    正睿培训 8.4 学习笔记
    bitset
    7.18 学习笔记
    7.17 学习笔记
    P6835 [Cnoi2020]线形生物
    UVA11300 Spreading the Wealth 思维题
  • 原文地址:https://www.cnblogs.com/it-cen/p/4232577.html
Copyright © 2020-2023  润新知