Home >Backend Development >PHP Problem >How to register with mobile phone number on php web page

How to register with mobile phone number on php web page

尚
Original
2019-10-26 14:26:243518browse

How to register with mobile phone number on php web page

##PHP web mobile phone registration logic:

First of all, you need to find an SMS service provider such as: Monternet, Cloud Messenger, Huyi Wireless, etc. apply for SMS sending interface.

The website implementation process is as follows:

Step 1: Users enter their mobile phone number when registering. The website must first verify whether this number is the correct mobile phone number through JS or ajax php.

Step 2: The user clicks to send the mobile phone verification code, and transmits the mobile phone number to php through ajax. At this time, php generates a random verification code and saves it in the session, and then sends the verification code to the mobile phone through the SMS interface. in this mobile number.

Step 3: The user enters the verification code received on the mobile phone to register. The website compares the verification code in the session with the verification code entered by the user.

PHP webpage is implemented with mobile phone number registration:

Usually when registering with a mobile phone number, you need to send a SMS verification code, and you also need to verify your mobile phone when changing passwords and other sensitive operations. Send SMS verification code. To send SMS messages in the project code, you usually need to call the SMS sending interface of the third-party SMS provider.

You can put the interface address and appkey in the configuration file. Encapsulate a function sendmsg for sending text messages. You can use the curl request method in PHP (curl function library in PHP) to send the request.


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'];
    }
}

Define a sendcode method in the controller. When the front desk clicks to send the verification code, it sends an ajax request. This method receives the mobile phone number of the registered user at the front desk and calls the sendmsg function to implement the verification code SMS sending function.

 //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];
    }

The above is the detailed content of How to register with mobile phone number on php web page. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn