搜索
首页后端开发PHP问题php如何实现手机验证
php如何实现手机验证Aug 15, 2020 am 10:03 AM
php手机验证

php实现手机验证的方法:首先要找到短信服务提供商,并接入短信服务;然后在网站信息提交页面请求发送信息;接着使服务器向短信服务提供商通信,并提交发送请求;最后通过运营商将信息发送到用户的手机中即可。

php如何实现手机验证

推荐:《PHP视频教程

php实现手机短信验证功能 

    现在网站在建设网站时为了保证用户信息的真实性,往往会选择发短信给用户手机发验证码信息,只有通过验证的用户才可以注册,这样保证了用户的联系信息资料的100%的准确性 。今天笔者就跟大家分享一下如何实现php手机短信验证功能,希望对大家有所帮助。

企业微信截图_15974568842275.png

第一、实现php手机短信验证功能的基本思路

1、要找到短信服务提供商,接入短信服务

2、在网站信息提交页面请求发送信息

3、服务器向短信服务提供商通信,提交发送请求

4、短信服务提供商通过运营商将信息发送到用户的手机中

二、手机号码短信验证前台页面效果实现

企业微信截图_15974568905039.png

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="js/jquery-1.4a2.min.js" type="text/javascript"></script>
              <script type="text/javascript">
                            /*-------------------------------------------*/
                            var InterValObj; //timer变量,控制时间
                            var count = 60; //间隔函数,1秒执行
                            var curCount;//当前剩余秒数
                            var code = ""; //验证码
                            var codeLength = 6;//验证码长度
                            function sendMessage() {
                                                 curCount = count;
                                                 var dealType; //验证方式
                            tel = $(’#tel’).val();
                  if(tel!=’’){
                       //验证手机有效性
                      var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
            if(!myreg.test($(’#tel’).val()))
          {
             alert(’请输入有效的手机号码!’);
             return false;
          }
                     tel = $(’#tel’).val();
                        //产生验证码
                            for (var i = 0; i < codeLength; i++) {
                                                        code += parseInt(Math.random() * 9).toString();
                                                 }
                                                 //设置button效果,开始计时
                                                        $("#btnSendCode").attr("disabled", "true");
                                                        $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
                                                        InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
                            //向后台发送处理数据
                $.ajax({
                    type: "POST", //用POST方式传输
                    dataType: "text", //数据格式:JSON
                    url: ’yanzhengma.php’, //目标地址(根据实际地址)
                    data: "&tel=" + tel + "&code=" + code,
                    error: function (XMLHttpRequest, textStatus, errorThrown) { },
                    success: function (msg){ }
                });
                     }else{
                     alert(’请填写手机号码’);
                      }
           }
                            //timer处理函数
                     function SetRemainTime() {
                                   if (curCount == 0) {                
                                          window.clearInterval(InterValObj);//停止计时器
                                          $("#btnSendCode").removeAttr("disabled");//启用按钮
                                          $("#btnSendCode").val("重新发送验证码");
                                          code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效   
                                   }
                                   else {
                                          curCount--;
                                          $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
                                   }
                            }
    </script>
</head>
<body>
<input name="tel" id=tel type="text" />
        <input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" /></p>
</body>
</html>

第三、调用短信服务器短信接口

笔者整理的页面是yanzhengma.php(具体根据服务商提供信息)

<?php //提交短信
$post_data = array();
$post_data[’userid’] = 短信服务商提供ID;
$post_data[’account’] = ’短信服务商提供用户名’;
$post_data[’password’] = ’短信服务商提供密码’;
// Session保存路径
$sessSavePath = dirname(__FILE__)."/../data/sessions/";
if(is_writeable($sessSavePath) && is_readable($sessSavePath)){
       session_save_path($sessSavePath);
}
session_register(’mobliecode’);
$_SESSION[’mobilecode’] = $_POST["code"];
$content=’短信验证码:’.$_POST["code"].’【短信验证】’;
$post_data[’content’] = mb_convert_encoding($content,’utf-8’, ’gb2312’); //短信内容需要用urlencode编码下
$post_data[’mobile’] = $_POST["tel"];
$post_data[’sendtime’] = ’’; //不定时发送,值为0,定时发送,输入格式YYYYMMDDHHmmss的日期值
$url=’http://IP:8888/sms.aspx?action=send’;
$o=’’;
foreach ($post_data as $k=>$v)
{
  $o.="$k=".$v.’&’;
}
$post_data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果需要将结果直接返回到变量里,那加上这句。
$result = curl_exec($ch);
?>

第四:提交表单信息时对短信验证码验证

//手机验证码开始
        session_start();
              $svalitel = $_SESSION[’mobilecode’];
              $vdcodetel = empty($vdcodetel) ? ’’ : strtolower(trim($vdcodetel));
       
            if(strtolower($vdcodetel)!=$svalitel || $svalitel==’’)
            {
                ResetVdValue();
                            //echo "Pageviews=".$vdcodetel;
                            ShowMsg("手机验证码错误!", ’-1’);
                exit();
            }

以上是php如何实现手机验证的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
怎么注册小红书账号?注册小红书账号需要什么?怎么注册小红书账号?注册小红书账号需要什么?Mar 22, 2024 am 10:16 AM

小红书,一个集生活、娱乐、购物、分享于一体的社交平台,已经成为众多年轻人日常生活中不可或缺的一部分。那么,如何注册小红书账号呢?一、怎么注册小红书账号?1.打开小红书官网或下载小红书APP。点击下方的“注册”按钮,您可以选择不同的注册方式。目前,小红书支持手机号、邮箱以及第三方账号(如微信、QQ、微博等)进行注册。3.填写相关信息。根据选择的注册方式,填写相应的手机号、邮箱或第三方账号信息。4.设置密码。设置一个强壮的密码,确保账号安全。5.完成验证。根据提示完成手机验证或邮箱验证。6.完善个人

知道微信密码怎么跳过手机验证知道微信密码怎么跳过手机验证Feb 07, 2024 pm 10:00 PM

如何绕过微信登陆验证直接登录打开微信的登录界面之后,点击下面的找回密码选项。进入到找回密码界面之后,点击下面的申诉找回微信帐号密码选项。之后勾选同意按钮,再点击下面的开始申诉选项。输入密码就可以。操作方法:点击用微信密码登录功能。进入微信登录界面后,点击用微信密码登录功能。点击输入微信密码。选择点击输入微信密码。点击登录即可进入微信。输入密码后,点击登录即可进入微信。微信安全认证是无法跳过去的。微信管的比较严,通话记录都不能在不同设备上调出来。登录的时候你手机会有提示,但是两种方式都要用手机。具

欧易买币流程欧易买币流程Mar 11, 2024 am 10:09 AM

欧易买币流程如下:1、打开欧易OKX交易所官网;2、进行手机验证;3、选择居住国家/地区;4、创建密码;5、进行身份认证;6、认证完成后进行交易即可。

快手账号异常激活怎么办?-快手免密支付怎么关?快手账号异常激活怎么办?-快手免密支付怎么关?Mar 18, 2024 pm 01:30 PM

快手账号异常激活怎么办?如果您的快手账号出现异常并需要激活,可以尝试以下步骤来解决问题:尝试重新登录:首先确保使用准确的用户名和密码重新登录您的快手账号。验证输入信息的准确性。2.检查网络连接:确保您的设备正常连接到互联网。有时,网络问题可能导致账号登录异常。3.检查账号状态:如果您的账号因违规行为或其他原因被快手封禁或冻结,您需要联系快手的客户支持部门以解决问题。他们可能需要您提供身份验证或其他信息以激活账号。4.验证码或手机验证:快手可能会要求您进行手机验证或输入验证码,以确保您的账号安全。

哔哩哔哩怎么换绑手机号哔哩哔哩怎么换绑手机号Feb 05, 2024 pm 03:15 PM

哔哩哔哩怎么换绑手机号?哔哩哔哩是当代年轻人非常喜欢的一款弹幕视频软件,其中有着不少有趣的内容,是很多小伙伴喜欢的一款视频软件。在我们使用哔哩哔哩的时候,我们的账号都是绑定手机号使用的,如果我们需要更换手机号绑定的话,就随小编一起来看看手机号绑定更换教程吧。哔哩哔哩怎么换绑手机号1、进入哔哩哔哩app设置,点击“安全隐私”。2、进入安全隐私,点击“账号安全中心”。3、进入账号安全,点击“更换手机”。4、进入手机验证,输入验证码,点击“确认”。

视频号的视频怎么发到抖音上?视频怎么下载?视频号的视频怎么发到抖音上?视频怎么下载?Mar 22, 2024 pm 08:01 PM

在当今移动互联网时代,视频已成为人们生活中不可或缺的一部分。作为中国最受欢迎的短视频平台之一,抖音吸引了大量用户。而随着视频号功能的推出,许多用户纷纷开始将自己创作的优质视频上传到视频号上。那么,如何将视频号的视频分享到抖音上呢?一、视频号的视频怎么发到抖音上?打开视频号应用,找到要分享的视频,然后点击视频右下角的分享按钮,会弹出分享选项框。在这里,你可以选择“分享到抖音”选项。接下来,系统会自动跳转到抖音应用,在此时你需要登录自己的抖音账号。如果还没有抖音账号,可以通过手机验证注册一个新账号。

猎聘怎么注册猎聘怎么注册Feb 07, 2024 pm 04:12 PM

猎聘怎么注册?猎聘是一款有着强大的求职招聘功能的软件,可以为我们提供非常多优质的公司和人才资源,帮助我们快速找到心仪的对象。各位如果想在猎聘中找工作或招聘人,都需要先注册一个平台的账号,我们可以通过手机号快速完成注册,如果有什么操作上的问题,就来看看小编带来的猎聘账号注册教程。猎聘账号注册教程1、打开手机,如下图,看到猎聘2、点击猎聘,如下图,请输入手机号,看到下一步3、点击下一步,如下图,输入验证码,猎聘怎么注册登录,这样就可以完成注册登录了

比特币永续合约怎么玩?一文搞清楚比特币永续合约玩法规则比特币永续合约怎么玩?一文搞清楚比特币永续合约玩法规则Mar 07, 2024 am 09:04 AM

现货交易包含币币交易和法币交易,币币交易是在两种数字货币之间交易,法币交易就是使用法定币购买数字货币,而合约交易,最为常见的就是交割合约和永续合约,交割合约就是约定了合约交割时间,永续合约就是没有约定交割时间,小编今天主要跟大家说的就是比特币永续合约。比特币永续合约怎么玩?(一)账号注册请访问欧易官网(点击这里进行注册),下载OKXAPP。在APP首页找到“注册/登录”按钮,选择“立即注册”,填写邮箱地址并点击“注册”按钮。接着输入您收到的六位数字验证码,验证码的有效时间为10分钟。下一步是进行

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!