Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk melaksanakan pendaftaran telefon bimbit dalam php

Bagaimana untuk melaksanakan pendaftaran telefon bimbit dalam php

王林
Lepaskan: 2023-03-13 09:48:02
asal
2163 orang telah melayarinya

Cara melaksanakan pendaftaran telefon mudah alih dalam PHP: 1. Letakkan alamat antara muka dan kunci aplikasi dalam fail konfigurasi 2. Kemaskan fungsi sendmsg dan gunakan curl untuk menghantar permintaan 3. Tentukan kaedah sendcode dalam pengawal; 4. Panggilan Fungsi sendmsg melaksanakan fungsi penghantaran SMS kod pengesahan.

Bagaimana untuk melaksanakan pendaftaran telefon bimbit dalam php

Persekitaran pengendalian artikel ini: sistem windows10, php 7, komputer thindpad t480.

Kami biasanya perlu menghantar kod pengesahan SMS semasa mendaftar menggunakan nombor telefon mudah alih Kami juga perlu menghantar kod pengesahan SMS apabila melakukan operasi sensitif seperti menukar kata laluan. Jadi apakah yang perlu anda lakukan jika anda ingin menghantar kod pengesahan SMS dalam projek sebenar? Biasanya adalah perlu untuk memanggil antara muka penghantaran SMS pembekal SMS pihak ketiga.

Mari kita lihat bagaimana untuk mencapainya!

Pendaftaran telefon mudah alih:

Anda boleh meletakkan alamat antara muka dan kunci aplikasi dalam fail konfigurasi. Merangkumkan fungsi sendmsg untuk menghantar mesej teks Anda boleh menggunakan kaedah permintaan curl dalam PHP (pustaka fungsi curl dalam PHP) untuk menghantar permintaan.

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'];
    }
}
Salin selepas log masuk

Tentukan kaedah kod hantar dalam pengawal Apabila meja depan mengklik untuk menghantar kod pengesahan, ia menghantar permintaan ajax. Kaedah ini menerima nombor telefon mudah alih pengguna berdaftar di meja depan dan memanggil fungsi sendmsg untuk menghantar Fungsi SMS kod pengesahan.

 //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];
    }
Salin selepas log masuk

Pendaftaran e-mel:

Pendaftaran e-mel dalam PHP boleh menggunakan pemalam PHPMailer untuk menghantar e-mel (lihat manual PHPMailer untuk butiran). Konfigurasikan maklumat akaun e-mel dalam fail konfigurasi, rangkumkan fungsi send_email dan gunakan phpmailer untuk menghantar e-mel.

if (!function_exists('send_email')) {
    //使用PHPMailer发送邮件
    function send_email($email, $subject, $body){
        //实例化PHPMailer类  不传参数(如果传true,表示发生错误时抛异常)
        $mail = new PHPMailer();
//        $mail->SMTPDebug = 2;                              //调试时,开启过程中的输出 
        $mail->isSMTP();                                     // 设置使用SMTP服务
        $mail->Host = config('email.host');                  // 设置邮件服务器的地址
        $mail->SMTPAuth = true;                              // 开启SMTP认证
        $mail->Username = config('email.email');             // 设置邮箱账号
        $mail->Password = config('email.password');            // 设置密码(授权码)
        $mail->SMTPSecure = 'tls';                            //设置加密方式 tls   ssl
        $mail->Port = 25;                                    // 邮件发送端口
        $mail->CharSet = 'utf-8';                           //设置字符编码
        //Recipients
        $mail->setFrom(config('email.email'));//发件人
        $mail->addAddress($email);     // 收件人
        //Content
        $mail->isHTML(true);                                  // 设置邮件内容为html格式
        $mail->Subject = $subject; //主题
        $mail->Body    = $body;//邮件正文
//      $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
        if ($mail->send()) {
            return true;
        }
        return $mail->ErrorInfo;
//        $mail->ErrorInfo
    }
}
Salin selepas log masuk

Kemudian panggil fungsi ini dalam kaedah pengawal untuk melaksanakan fungsi menghantar e-mel pengesahan ke peti mel pengguna berdaftar.

Pembelajaran yang disyorkan: latihan php

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pendaftaran telefon bimbit dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan