Rumah >pembangunan bahagian belakang >tutorial php >Melaksanakan sistem log masuk dan pendaftaran pengguna menggunakan PHP

Melaksanakan sistem log masuk dan pendaftaran pengguna menggunakan PHP

王林
王林asal
2023-05-11 08:13:413302semak imbas

Dengan aplikasi Internet yang meluas, sistem log masuk dan pendaftaran pengguna telah menjadi fungsi penting untuk banyak laman web. Dalam artikel ini, kami akan melaksanakan sistem log masuk dan pendaftaran pengguna yang mudah melalui bahasa PHP.

  1. Bina pangkalan data

Pertama, kita perlu mencipta pangkalan data untuk menyimpan maklumat pengguna. Kami akan menggunakan pangkalan data MySQL dan mencipta jadual yang dipanggil "pengguna" untuk menyimpan nama pengguna dan kata laluan.

BUAT pengguna JADUAL (

id INT(11) NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL,
PRIMARY KEY (id)

);

  1. Halaman pendaftaran

Seterusnya, kita perlu membuat halaman pendaftaran, dengan untuk meminta pengguna memasukkan nama pengguna dan kata laluan mereka. Dalam halaman pendaftaran, kita perlu menggunakan borang HTML untuk mengumpul maklumat input pengguna dan menggunakan kod PHP untuk memasukkan maklumat ini ke dalam pangkalan data.

Berikut ialah kod untuk halaman pendaftaran mudah:

8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e

<title>用户注册</title>

< ;/head>
6c04bd5ca3fcae76e30b72ad730ca86d

<h1>用户注册</h1>
<form action="register.php" method="post">
    <label>用户名:</label>
    <input type="text" name="username" required>
    <br><br>
    <label>密码:</label>
    <input type="password" name="password" required>
    <br><br>
    <input type="submit" value="注册">
</form>

36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

Dalam kod di atas, kami menggunakan borang HTML untuk mengumpul Pengguna memasukkan maklumat dan menetapkan atribut tindakan borang kepada "register.php", yang bermaksud bahawa apabila pengguna menyerahkan borang, kod PHP memproses maklumat input. Seterusnya, kami akan menulis fail register.php untuk mengendalikan input ini.

  1. Pemprosesan Pendaftaran

Sebelum memasukkan data borang ke dalam pangkalan data, kita perlu memastikan bahawa data input adalah sah. Kami mengesahkan bahawa nama pengguna adalah unik dan kata laluan disulitkan. Berikut ialah kod fail register.php:

04655d30ddf28a843e658397d79dd657query("SELECT * FROM users WHERE username= '$username' ");
if ($result->num_rows > 0) {

die('用户名已存在');

}

// Kata laluan disulitkan
$password = password_hash($ kata laluan, PASSWORD_DEFAULT) ;

// Masukkan maklumat pengguna ke dalam pangkalan data
$sql = "MASUKKAN KE DALAM pengguna (nama pengguna, kata laluan) NILAI ('$nama pengguna', '$kata laluan')";
jika ($mysqli ->query($sql)) {

echo '注册成功';

} lain {

echo '注册失败: '.$mysqli->error;

}
?>

Dalam daftar.php fail di atas, kami mula-mula mendapatkan nama pengguna dan kata laluan yang dimasukkan oleh pengguna. Seterusnya, kami menyemak sama ada nama pengguna sudah wujud dalam pangkalan data. Kemudian, kami menggunakan fungsi password_hash untuk menyulitkan kata laluan. Akhir sekali, kami memasukkan nama pengguna dan kata laluan yang disulitkan ke dalam pangkalan data. Jika sisipan berjaya, kami akan mengeluarkan mesej "Pendaftaran Berjaya". Jika tidak, kami akan mengeluarkan mesej "Pendaftaran gagal".

  1. Halaman log masuk

Seterusnya, kami akan mencipta halaman log masuk untuk pengguna memasukkan nama pengguna dan kata laluan berdaftar mereka. Dalam halaman log masuk, kami akan menggunakan borang HTML untuk mengumpul maklumat input pengguna dan menggunakan kod PHP untuk mengesahkan maklumat identiti pengguna.

Berikut ialah kod untuk halaman log masuk mudah:

8b05045a5be5764f313ed5b9168a17e6
100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e

<title>用户登录</title>

< ;/head>
6c04bd5ca3fcae76e30b72ad730ca86d

<h1>用户登录</h1>
<form action="login.php" method="post">
    <label>用户名:</label>
    <input type="text" name="username" required>
    <br><br>
    <label>密码:</label>
    <input type="password" name="password" required>
    <br><br>
    <input type="submit" value="登录">
</form>

36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

Dalam kod di atas, kami menggunakan borang HTML untuk mengumpulkan maklumat input pengguna, dan atribut tindakan borang ditetapkan kepada "login.php", yang bermaksud bahawa apabila pengguna menyerahkan borang, kod PHP memproses maklumat input. Seterusnya, kami akan menulis fail login.php untuk mengesahkan maklumat identiti pengguna.

  1. Pemprosesan log masuk

Sebelum memproses permintaan log masuk pengguna, kami perlu memastikan bahawa data yang dimasukkan adalah sah. Kami akan menyemak sama ada nama pengguna wujud dan jika kata laluan yang dimasukkan sepadan dengan kata laluan dalam pangkalan data. Berikut ialah kod fail login.php:

fa7eef75f57386438dce1b99bdacb131query("SELECT * FROM users WHERE username=' $username' ");
if ($result->num_rows == 0) {

die('用户名不存在,请检查输入');

}

// Semak sama ada kata laluan itu betul
$user = $result-> fetch_assoc();
if (!password_verify($password, $user['password'])) {

die('密码错误,请检查输入');

}

gema 'Selamat Datang'.$ nama pengguna;
?>

Dalam fail login.php di atas, kami mula-mula mendapatkan nama pengguna dan kata laluan yang dimasukkan oleh pengguna. Seterusnya, kami menyemak sama ada nama pengguna wujud dalam pangkalan data. Kami kemudian mendapatkan kata laluan pengguna itu daripada pangkalan data dan menggunakan fungsi password_verify untuk menyemak sama ada kata laluan yang dimasukkan sepadan dengan kata laluan dalam pangkalan data. Jika kata laluan sepadan, mesej alu-aluan akan dikeluarkan. Jika tidak, kami mencetak mesej ralat dan menamatkan program.

Pada ketika ini, kami telah menyelesaikan pelaksanaan sistem log masuk dan pendaftaran pengguna yang mudah. Sistem ini membolehkan pengguna mendaftar akaun di laman web dan log masuk untuk mengakses halaman tertentu. Sudah tentu, ini hanya kaedah pelaksanaan yang paling asas Dalam aplikasi sebenar, fungsi yang lebih kompleks diperlukan untuk memastikan ketersediaan dan keselamatan sistem.

Atas ialah kandungan terperinci Melaksanakan sistem log masuk dan pendaftaran pengguna menggunakan 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