Rumah pembangunan bahagian belakang tutorial php Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna

Kemahiran pembangunan PHP: Bagaimana untuk melaksanakan fungsi pengesahan SMS pendaftaran pengguna

Sep 21, 2023 pm 02:37 PM
pembangunan php Pendaftaran pengguna Pengesahan SMS Kemahiran pembangunan PHP

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
);
Salin selepas log masuk

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();
}
Salin selepas log masuk

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

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

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!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk mendaftar alamat e-mel kereta api 12306 Bagaimana untuk mendaftar alamat e-mel kereta api 12306 Apr 30, 2024 am 11:33 AM

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;

Mengapa saya tidak boleh mendaftar di bursa Bitget Wallet? Mengapa saya tidak boleh mendaftar di bursa Bitget Wallet? Sep 06, 2024 pm 03:34 PM

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.

Gate.io Buka Tutorial Pendaftaran Pengguna Baharu dan Caj Semula Sesame Gate.io Buka Tutorial Pendaftaran Pengguna Baharu dan Caj Semula Sesame Apr 25, 2024 pm 04:53 PM

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.

Mengapa Douyin mempunyai dua akaun? Bagaimana untuk memasang dua TikToks pada telefon bimbit? Mengapa Douyin mempunyai dua akaun? Bagaimana untuk memasang dua TikToks pada telefon bimbit? May 06, 2024 pm 09:28 PM

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

Bagaimana untuk menutup perkaitan berbilang akaun di Douyin? Apakah peranan pemautan akaun? Bagaimana untuk menutup perkaitan berbilang akaun di Douyin? Apakah peranan pemautan akaun? Apr 20, 2024 pm 05:58 PM

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 asing pertukaran usdt asing Apr 19, 2024 pm 04:01 PM

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.

Apakah penjelasan terperinci tentang peraturan perubahan warna percikan Douyin? Pelbagai warna percikan memenuhi syarat Apakah penjelasan terperinci tentang peraturan perubahan warna percikan Douyin? Pelbagai warna percikan memenuhi syarat May 04, 2024 am 09:31 AM

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

Pintu masuk laman web rasmi DeepSeek dan aktiviti promosi terkini Pintu masuk laman web rasmi DeepSeek dan aktiviti promosi terkini Feb 19, 2025 pm 05:15 PM

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.

See all articles