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網頁怎麼用手機號碼註冊的詳細內容。更多資訊請關注PHP中文網其他相關文章!