


Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna
Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna
Dalam era Internet, pendaftaran pengguna telah menjadi tingkah laku biasa untuk laman web dan aplikasi. Untuk melindungi keselamatan akaun pengguna dan mencegah pendaftaran berniat jahat, banyak syarikat telah mendayakan fungsi pengesahan SMS. Pengguna perlu memasukkan nombor telefon bimbit mereka dan menerima kod pengesahan SMS semasa mendaftar untuk mengesahkan identiti dan kesahihan mereka. Dalam artikel ini, kami akan memperkenalkan cara menggunakan bahasa PHP untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna dan memberikan contoh kod khusus.
Langkah 1: Sediakan persekitaran pembangunan
Pertama, pastikan anda telah memasang penghurai PHP dan pangkalan data, seperti MySQL. Selain itu, anda juga memerlukan platform SMS yang tersedia Kami akan menggunakan Perkhidmatan SMS Awan Alibaba (Aliyun SMS) dalam contoh ini. Anda perlu mendaftar akaun dengan Alibaba Cloud dan ikuti dokumentasinya untuk mengkonfigurasi dan mendapatkan kunci API.
Langkah 2: Buat pangkalan data
Buat pangkalan data bernama "pengguna" dan buat jadual bernama "pengguna" dalam pangkalan data. Struktur jadual adalah seperti berikut:
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, mobile VARCHAR(20) UNIQUE NOT NULL, status TINYINT(1) DEFAULT 0, verification_code VARCHAR(6) DEFAULT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
Dalam jadual ini, kami menyimpan maklumat pengguna, termasuk nama pengguna, kata laluan, nombor telefon mudah alih, status pengguna, kod pengesahan dan masa penciptaan.
Langkah 3: Hantar kod pengesahan SMS
Seterusnya, kami akan menulis fungsi PHP untuk menghantar kod pengesahan SMS. Dalam fungsi ini, kita perlu memanggil API SMS Alibaba Cloud dan memasukkan nombor telefon mudah alih dan kod pengesahan sebagai parameter.
function sendSMS($mobile, $verificationCode) { $accessKeyId = '<Your Access Key Id>'; $accessSecret = '<Your Access Key Secret>'; $params = [ 'PhoneNumbers' => $mobile, 'SignName' => '<Your Sign Name>', 'TemplateCode' => '<Your Template Code>', 'TemplateParam' => json_encode(['code' => $verificationCode]) ]; $client = new GuzzleHttpClient(); $response = $client->request('POST', 'https://dysmsapi.aliyuncs.com/', [ 'query' => array_merge($params, ['AccessKeyId' => $accessKeyId]), 'headers' => ['x-sdk-client' => 'php/2.0.0'] ]); return $response->getBody(); }
Dalam fungsi ini, kami perlu menggantikan <Your Access Key Id>
和<Your Access Key Secret>
替换为你在阿里云获取的API密钥信息。同时,你还需要将<Your Sign Name>
和<Your Template Code>
dengan tandatangan SMS dan kod templat SMS yang anda tetapkan dalam Alibaba Cloud.
Langkah 4: Memproses permintaan pendaftaran
Apabila pengguna menyerahkan permintaan pendaftaran, kami perlu menyemak sama ada nombor telefon bimbit telah didaftarkan. Jika tidak didaftarkan, kami menjana kod pengesahan 6 digit secara rawak dan menyimpannya ke pangkalan data.
function registerUser($username, $password, $mobile) { // 检查手机号码是否已被注册 if (checkMobileExists($mobile)) { return '手机号码已被注册'; } // 生成随机验证码 $verificationCode = rand(100000, 999999); // 保存验证码到数据库 saveVerificationCode($mobile, $verificationCode); // 发送短信验证码 $response = sendSMS($mobile, $verificationCode); return '短信验证码已发送'; } function checkMobileExists($mobile) { // 连接数据库 $conn = new mysqli('localhost', 'root', 'password', 'users'); // 检查手机号码是否已存在 $sql = "SELECT * FROM users WHERE mobile = '{$mobile}'"; $result = $conn->query($sql); return $result->num_rows > 0; } function saveVerificationCode($mobile, $verificationCode) { // 连接数据库 $conn = new mysqli('localhost', 'root', 'password', 'users'); // 保存验证码到数据库 $sql = "UPDATE users SET verification_code = '{$verificationCode}' WHERE mobile = '{$mobile}'"; $conn->query($sql); }
Dalam kod contoh ini, kami mula-mula menyemak sama ada nombor telefon bimbit telah didaftarkan. Jika nombor mudah alih sudah wujud, kami akan mengembalikan mesej ralat. Jika tidak, kami akan menjana kod pengesahan 6 digit rawak dan menyimpannya ke pangkalan data.
Langkah 5: Sahkan kod pengesahan
Selepas pengguna memasukkan kod pengesahan SMS yang diterima, kami perlu mengesahkan sama ada kod pengesahan itu betul. Jika kod pengesahan adalah betul, kami akan mengemas kini status pengguna kepada "Disahkan" untuk menunjukkan bahawa pengguna telah disahkan oleh nombor telefon mudah alih mereka.
function verifyCode($mobile, $verificationCode) { // 检查验证码是否正确 if (checkVerificationCode($mobile, $verificationCode)) { // 更新用户状态 updateStatus($mobile); return '手机号码验证成功'; } return '验证码错误'; } function checkVerificationCode($mobile, $verificationCode) { // 连接数据库 $conn = new mysqli('localhost', 'root', 'password', 'users'); // 检查验证码是否正确 $sql = "SELECT * FROM users WHERE mobile = '{$mobile}' AND verification_code = '{$verificationCode}'"; $result = $conn->query($sql); return $result->num_rows > 0; } function updateStatus($mobile) { // 连接数据库 $conn = new mysqli('localhost', 'root', 'password', 'users'); // 更新用户状态为已验证 $sql = "UPDATE users SET status = 1 WHERE mobile = '{$mobile}'"; $conn->query($sql); }
Dalam kod ini, kami mula-mula menyemak sama ada kod pengesahan itu betul. Jika kod pengesahan adalah betul, kami akan mengemas kini status pengguna kepada 1, menunjukkan bahawa pengguna telah disahkan melalui nombor telefon mudah alih.
Ringkasan:
Melalui langkah di atas, kami berjaya melaksanakan fungsi pengesahan SMS pendaftaran pengguna. Pengguna akan menerima kod pengesahan mesej teks semasa mendaftar Dengan memasukkan kod pengesahan yang betul, kesahihan dan kesahihan nombor telefon bimbit dipastikan. Fungsi pengesahan SMS ini boleh meningkatkan keselamatan akaun pengguna dengan berkesan dan menghalang pendaftaran berniat jahat dan akaun yang dicuri.
Perlu diambil perhatian bahawa kod di atas hanyalah contoh mudah, dan langkah keselamatan dan proses pengesahan lain mungkin perlu dipertingkatkan dalam projek sebenar. Tetapi melalui contoh ini, anda boleh belajar cara menggunakan bahasa PHP dan perkhidmatan SMS Awan Alibaba untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna.
Rujukan:
- [Dokumen API SMS Awan Alibaba](https://help.aliyun.com/document_detail/55284.html?spm=a2c4g.11186623.6.624.649a645e)
Atas ialah kandungan terperinci Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Langkah-langkah untuk mendaftarkan alamat e-mel Railway 12306 adalah seperti berikut: Layari laman web 12306 dan klik "Daftar" pilih "Pendaftaran E-mel" dan isikan e-mel, nama, telefon bimbit dan maklumat lain mengikut kata laluan; gesaan; masukkan kod pengesahan e-mel dan kod pengesahan telefon mudah alih untuk Maklumat pengesahan;

Terdapat pelbagai sebab untuk tidak dapat mendaftar untuk pertukaran BitgetWallet, termasuk sekatan akaun, wilayah tidak disokong, isu rangkaian, penyelenggaraan sistem dan kegagalan teknikal. Untuk mendaftar untuk pertukaran BitgetWallet, sila lawati laman web rasmi, isi maklumat, bersetuju dengan syarat, lengkapkan pendaftaran dan sahkan identiti anda.

Cara mendaftar dan mengecas semula akaun Gate.io: 1. Layari laman web rasmi Gate.io dan klik "Daftar". 2. Pilih kaedah pendaftaran (e-mel atau telefon bimbit), tetapkan kata laluan, dan bersetuju dengan terma. 3. Log masuk ke akaun anda dan klik "Caj semula". 4. Pilih mata wang atau mata wang kripto yang sah untuk dicas semula, masukkan amaun dan pilih kaedah cas semula. 5. Dapatkan alamat caj semula dan pindahkan dana daripada dompet atau bursa luar.

Dalam era digital, media sosial telah menjadi sebahagian daripada kehidupan orang ramai. Douyin, sebagai salah satu platform video pendek paling popular di China, telah menarik sejumlah besar pengguna. Sesetengah pengguna telah mendaftarkan dua akaun Jadi, mengapa Douyin mempunyai dua akaun? Artikel ini akan menjawab soalan ini untuk anda dan menerangkan cara memasang dua akaun Douyin pada telefon anda. 1. Mengapakah Douyin mempunyai dua akaun? Pembezaan fungsi: Sesetengah pengguna akan membezakan akaun berdasarkan jenis kandungan atau fungsi Contohnya, satu akaun digunakan untuk berkongsi kehidupan harian, dan akaun lain digunakan untuk menunjukkan kemahiran profesional. 2. Perlindungan privasi: Sesetengah pengguna berharap dapat melindungi privasi mereka melalui dua akaun, kehidupan dan kerja yang berasingan, dan mengelakkan kebocoran maklumat. 3. Keperluan interaksi: Sesetengah pengguna mungkin mendaftar dua kerana keperluan interaksi

Douyin, sebagai platform video pendek yang paling popular pada masa kini, telah menarik ramai pengguna untuk mendaftar dan berkongsi. Sesetengah pengguna boleh mendaftarkan berbilang akaun Douyin untuk tujuan yang berbeza. Douyin membenarkan pengguna memautkan berbilang akaun untuk pengurusan yang mudah. Tetapi kadangkala, pengguna mungkin perlu menyahkaitan akaun. Artikel ini akan menumpukan pada "Cara menutup perkaitan berbilang akaun di Douyin" dan memperkenalkan secara terperinci kaedah menutup perkaitan akaun dan peranan perkaitan akaun. 1. Bagaimana untuk menutup perkaitan berbilang akaun di Douyin? 1. Buka APP Douyin dan masukkan halaman utama peribadi "Saya". 2. Klik ikon "tiga jalur" di penjuru kanan sebelah atas untuk membuka menu fungsi. 3. Dalam menu fungsi, cari pilihan "Tetapan" dan klik untuk masuk. 4. Dalam halaman tetapan, cari pilihan "Akaun dan Keselamatan" dan klik untuk masuk.

Pertukaran USDT luar negara ialah platform dagangan mata wang digital yang didaftarkan dan dikendalikan di luar negara, terutamanya berdasarkan USDT. Ciri-ciri utama termasuk: sokongan untuk transaksi USDT, perkhidmatan global, kecairan tinggi, sokongan untuk pelbagai mata wang dan saluran deposit dan pengeluaran mata wang sah. Apabila memilih pertukaran USDT luar negara, anda harus mempertimbangkan keselamatan, yuran transaksi, sokongan mata wang, deposit dan pengeluaran mata wang fiat dan sokongan perkhidmatan pelanggan. Pertukaran yang terkenal termasuk Binance, Huobi, Oyi dan Coinbase.

Untuk meningkatkan interaksi pengguna dan meningkatkan pengalaman pengguna, platform Douyin telah melancarkan Sparks, mekanisme interaktif yang menarik. Pengguna boleh mengaktifkan dan meningkatkan percikan api mereka melalui satu siri tindakan pada Douyin Warna yang berbeza mewakili pencapaian dan penghormatan yang berbeza. Memahami peraturan perubahan warna Douyin Spark boleh membantu pengguna mengambil bahagian dan berinteraksi dengan lebih baik, serta menikmati keseronokan sosial yang dibawa oleh Douyin. 1. Apakah penjelasan terperinci tentang peraturan perubahan warna percikan Douyin? 1. Gelagat mengaktifkan gelagat interaktif pengguna, seperti suka, komen, perkongsian, dll., yang boleh mengaktifkan percikan api. 2. Peningkatan tahap Apabila interaksi pengguna meningkat, percikan api akan meningkat secara beransur-ansur dan warna akan berubah dengan sewajarnya. 3. Perubahan warna Perubahan warna percikan api biasanya berkaitan dengan kekerapan interaksi pengguna, kualiti interaksi, dan semangat untuk menyertai aktiviti. 4. Tugasan selesai

Laman web rasmi DeepSeek kini melancarkan pelbagai aktiviti diskaun untuk menyediakan pengguna dengan pengalaman membeli -belah. Pengguna baru mendaftar untuk mendapatkan kupon $ 10, dan nikmati diskaun masa terhad 15% untuk keseluruhan penonton. Mengesyorkan rakan juga boleh mendapat ganjaran, dan anda boleh mengumpul mata untuk penebusan hadiah semasa membeli -belah. Tarikh akhir acara berbeza.
