好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php网页怎么用手机号注册


PHP网页手机注册逻辑:

首先要找短信服务商如:梦网、云信使、互亿无线等等申请短信发送接口。

网站实现流程如下:

第一步:用户注册时输入手机号,网站首先要通过JS或者ajax+php验证这个号码是不是正确的手机号。

第二步:用户点击发送手机验证码,通过ajax把手机号传到php,这时php生成一个随机的验证码保存在session中,然后通过短信接口把这个验证码发送到这个手机号中。

第三步:用户输入手机收到的验证码注册。网站用session中的验证码和用户输入的验证码比较。

php网页用手机号注册实现:

通常在使用手机号注册时需要发送短信验证码,在修改密码等敏感操作时也需要验证手机号发送短信验证码。在项目代码中发送短信,通常要调用第三方短信商的短信发送接口。

可以将接口地址和appkey放在配置文件中。封装一个函数sendmsg用于发送短信,可以用PHP中的curl请求方式(PHP中的curl函数库)发送请求。

if (!function_exists('sendmsg')) {
    function sendmsg($phone, $msg){
   //从配置文件读取接口信息
   $gateway = config('msg.gateway');
   $appkey = config('msg.appkey');
   //准备请求地址
   $url = $gateway . "?appkey=" . $appkey . "&mobile=" . $phone . "&content=" . $msg;
   //发送请求 比如get方式  https请求
   $res = curl_request($url, false, [], true);
 
   if (!$res) {
  return "请求发送失败";
   }
   //请求发送成功,返回值json格式字符串
   $arr = json_decode($res, true);
   if ($arr['code'] == 10000) {
  return true;
   }
   return $arr['msg'];
    }
} 

在控制器里定义一个sendcode方法,当前台点击发送验证码发送ajax请求,该方法接收到前台注册用户的手机号,调用sendmsg函数实现验证码短信发送功能。

 //ajax请求发送注册验证码
    public function sendcode($phone)
    {
   //参数验证
   if (empty($phone)) {
  return ['code' => 10002, 'msg' => '参数错误'];
   }
   //短信内容  您用于注册的验证码为:****,如非本人操作,请忽略。
   $code = mt_rand(1000, 9999);
   $msg = "您用于注册的验证码为:{$code},如非本人操作,请忽略。";
   //发送短信
   $res = sendmsg($phone, $msg);
   if ($res === true) {
  //发送成功,存储验证码到session 用于后续验证码的校验
  session('register_code_' . $phone, $code);
  return ['code' => 10000, 'msg' => '发送成功', 'data' => $code];
   }
   return ['code' => 10001, 'msg' => $res];
    } 

以上就是php网页怎么用手机号注册的详细内容,更多请关注Gxl网其它相关文章!

查看更多关于php网页怎么用手机号注册的详细内容...

  阅读:61次