Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Langkah-langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel dalam PHP

Langkah-langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel dalam PHP

WBOY
WBOYasal
2023-08-26 19:22:47921semak imbas

Langkah-langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel dalam PHP

Langkah khusus untuk melaksanakan sistem log masuk dan pendaftaran dengan fungsi pengesahan e-mel dalam PHP

Apabila membangunkan aplikasi web, adalah penting untuk melaksanakan sistem log masuk dan pendaftaran yang selamat. Untuk meningkatkan pengalaman dan keselamatan pengguna, kami boleh menambah fungsi pengesahan e-mel untuk memastikan bahawa hanya pengguna dengan alamat e-mel yang disahkan boleh berjaya mendaftar dan log masuk. Berikut adalah langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel menggunakan bahasa PHP.

Langkah 1: Cipta Pangkalan Data

Pertama, kita perlu mencipta pangkalan data untuk menyimpan maklumat dan status pengesahan pengguna. Anda boleh menggunakan MySQL atau sistem pengurusan pangkalan data lain untuk mencipta pangkalan data bernama "pengguna" dan mencipta jadual data bernama "pengguna" di dalamnya. Jadual boleh mengandungi medan berikut:

  • id: ID pengguna (ditambah sendiri)
  • nama pengguna: nama pengguna
  • e-mel: e-mel
  • kata laluan: kata laluan (storan disulitkan)
  • verification_code: pengesahan_kod
  • status (0 bermakna tidak disahkan, 1 bermakna disahkan)
Langkah 2: Buat halaman pendaftaran

Seterusnya, buat fail bernama "register.php" untuk mengendalikan logik pendaftaran pengguna. Halaman harus mengandungi borang untuk pengguna memasukkan nama pengguna, e-mel dan kata laluan mereka, dan menyerahkan data kepada pelayan apabila pengguna mengklik butang daftar. Di bahagian pelayan, kami perlu melakukan pengesahan dan operasi berikut:

    Semak sama ada nama pengguna, e-mel dan kata laluan kosong Jika ia kosong, pengguna akan diminta untuk mengisinya
  • Semak sama ada format e-mel adalah betul;
  • Semak sama ada e-mel telah didaftarkan, jika sudah didaftarkan, pengguna akan digesa untuk menggunakan alamat e-mel lain
  • Hasilkan kod pengesahan secara rawak (anda boleh menggunakan fungsi "uniqid" PHP); Masukkan nama pengguna, alamat e-mel, kata laluan dan kod pengesahan ke dalam pangkalan data, Dan tetapkan status pengesahan kepada 0
  • Hantar e-mel pengesahan kepada pengguna Kandungan e-mel mengandungi pautan pengesahan, dan pautan itu perlu mengandungi pengesahan kod.
  • Langkah 3: Buat Halaman Pengesahan
Selepas pengguna mendaftar, mereka akan menerima e-mel pengesahan. Pengguna perlu mengklik pautan pengesahan dalam e-mel untuk melengkapkan pengesahan e-mel. Untuk melengkapkan pengesahan e-mel, kami perlu mencipta fail bernama "verify.php" untuk mengendalikan logik pautan pengesahan. Dalam fail ini, kita perlu melakukan perkara berikut:

Dapatkan kod pengesahan dalam pautan pengesahan

    Soal maklumat pengguna yang sepadan dari pangkalan data berdasarkan kod pengesahan
  • Jika pengguna ditemui, tetapkan pengesahannya status ke 1 ;
  • Paparkan mesej pengesahan yang berjaya pada halaman.
  • Langkah 4: Buat halaman log masuk
Selepas pengguna melengkapkan pengesahan e-mel, kita perlu mencipta halaman log masuk bernama "login.php". Halaman harus mengandungi borang untuk pengguna memasukkan e-mel dan kata laluan mereka, dan menyerahkan data kepada pelayan apabila pengguna mengklik butang log masuk. Di bahagian pelayan, kami perlu melakukan pengesahan dan operasi berikut:

Semak sama ada e-mel dan kata laluan kosong, dan jika ia kosong, gesa pengguna untuk mengisinya

    Semak sama ada e-mel dan kata laluan itu sepadan rekod dalam pangkalan data;
  • Semak sahkan pengguna sama ada statusnya adalah 1, jika tidak, minta pengguna untuk pengesahan e-mel
  • Tetapkan status log masuk pengguna dan lompat ke laman utama peribadi pengguna.
  • Melalui langkah di atas, kami berjaya melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel. Untuk memudahkan pemahaman dan pelaksanaan, berikut adalah beberapa contoh kod:
register.php:

<form method="POST" action="register.php">
    <input type="text" name="username" placeholder="用户名">
    <input type="email" name="email" placeholder="邮箱">
    <input type="password" name="password" placeholder="密码">
    <button type="submit">注册</button>
</form>

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // 检查用户名、邮箱和密码是否为空
    
    // 检查邮箱格式是否正确
    
    // 检查邮箱是否已经被注册过
    
    // 生成验证码
    
    // 将用户信息和验证码插入到数据库中
    
    // 发送验证邮件
}
?>

verify.php:

<?php
if (isset($_GET['code'])) {
    $code = $_GET['code'];

    // 根据验证码查询用户
    
    // 将验证状态设置为1
    
    // 显示验证成功的消息
}
?>

login.php:

<form method="POST" action="login.php">
    <input type="email" name="email" placeholder="邮箱">
    <input type="password" name="password" placeholder="密码">
    <button type="submit">登录</button>
</form>

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // 检查邮箱和密码是否为空
    
    // 检查邮箱和密码匹配
    
    // 检查用户的验证状态
    
    // 设置用户的登录状态,并跳转到个人主页
}
?>

Di atas adalah langkah-langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel dan contoh kod. Melalui sistem sedemikian, kami bukan sahaja dapat melindungi keselamatan akaun pengguna, tetapi juga memastikan pengguna menggunakan alamat e-mel yang sebenar dan sah untuk mendaftar, meningkatkan kebolehpercayaan sistem dan pengalaman pengguna.

Atas ialah kandungan terperinci Langkah-langkah khusus untuk melaksanakan sistem pendaftaran log masuk dengan fungsi pengesahan e-mel dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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