中易网

如何实现php手机短信验证功能

答案:5  悬赏:70  
解决时间 2021-01-14 00:22
如何实现php手机短信验证功能
最佳答案
有一个短信发送服务器,就可以了。 

1.生成随机码,存入帐号中
2.通过短信服务器,发送随机码到用户手机

3.让用户输入短信密码

4.比对用户输入的密码和帐号中的密码,是否一致。
实现php手机短信验证功能的基本思路
1、要找到短信服务提供商,接入短信服务
2、在网站信息提交页面请求发送信息
3、服务器向短信服务提供商通信,提交发送请求
4、短信服务提供商通过运营商将信息发送到用户的手机中
全部回答
我暂时保留我的看法!
php发送短信验证码完成注册功能

你的应用应该是这样吧,用户输入手机号码,点击发送短信,用户收到验证码,输入对应的验证码 判断是否正确。


需要:
申请一个短信接口,就是点击发送验证码的时候,提交到接口给该号码下发验证码。





技术方面的实现:
1、点击获取验证码
2、程序ajax  post提交到短信接口
3、短信接口服务商 接口判断用户和口令,正确后,下发短信给该号码。
4、用户输入号码,程序判断验证码是否一致。

  现在网站在建设网站时为了保证用户信息的真实性,往往会选择发短信给用户手机发验证码信息,只有通过验证的用户才可以注册,这样保证了用户的联系信息资料的100%的准确性 。


  第一、实现php手机短信验证功能的基本思路
  1、要找到短信服务提供商,接入短信服务
  2、在网站信息提交页面请求发送信息
  3、服务器向短信服务提供商通信,提交发送请求
  4、短信服务提供商通过运营商将信息发送到用户的手机中


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


  
  
  
  
  
  
  
  
  
  
  
  


  第三、调用短信服务器短信接口
  整理的页面是yanzhengma.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();
  }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
今天洛阳到上海的火车k362到上海终点站是什么
如何成为国家健将级运动员
华东有什么特产和小吃?
青春期3完整版电影
联合上报的公文,由( )加盖公章A.发文机关 B.
双方打架,如果要拘留的话是不是两个一起拘留
通城县咸宁帕菲克国际健身俱乐部在哪里啊,我
泰国皇家乳胶床垫和网上的有什么区别
gre og 光盘 提示错误“找不到文件'.\
英语清辅音有哪些
北京模多客科技有限公司怎么样?
【杨公忌日 大事勿用】 嫁娶 赴任 招赘 纳
电气图中RST分别表示ABC三相吗
西蜀阜村到萧山南阳童装工业区坐公交怎么走
庚辰年,乙酉月,辛卯日,戊戌时男命
推荐资讯
VB:输入半径,计算圆周长和圆面积。运行界面
为什么中国留不住人才高端人才都在美国呢
双鱼座会讨厌天蝎吗
评价一下漂亮吗?光线不好手机像素达不到,照
怎么能使cad的图形更清晰的粘贴到word里
湖北十堰微沁高蓝绿松石藏银戒指
一年生紫薇能长多粗
工作穿衣被嫌弃怎么办
与合家团圆,合家安康相近的祝福成语有哪些?
市场经济狼争虎斗,是智者,强者,勤奋者的天
这款映众GTX750Ti黑金至尊版显卡怎么样 好吗
如何开启三星s7的隐藏功能
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?