Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan php untuk melaksanakan pendaftaran pengguna dan log masuk

Cara menggunakan php untuk melaksanakan pendaftaran pengguna dan log masuk

PHPz
PHPzasal
2023-04-19 09:15:481043semak imbas

Gunakan PHP untuk melaksanakan pendaftaran dan log masuk pengguna

Dalam era Internet moden, pendaftaran dan log masuk pengguna merupakan proses yang tidak dapat dielakkan. Sebagai pembangun web, adalah sangat penting untuk memahami cara membina sistem pendaftaran dan log masuk pengguna. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan pendaftaran dan log masuk pengguna.

Langkah 1: Cipta pangkalan data

Sebelum kita bermula, kita perlu mencipta pangkalan data. Kami akan menggunakan pangkalan data MySQL. Buat jadual bernama "pengguna" dalam MySQL yang mengandungi medan id, nama pengguna dan kata laluan. Kita boleh menggunakan pernyataan SQL berikut untuk mencipta jadual.

BUAT JADUAL users (
id int(11) NOT NULL AUTO_INNCREMENT,
username varchar(50) NOT NULL,
password var NOT char(255) NULL,
KUNCI UTAMA (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Langkah 2: Buat borang pendaftaran

Tidak perlu buat borang pendaftaran Pengguna. Kami akan menggunakan kod HTML dan PHP untuk membina borang.



<title>User Registration</title>


;<🎜

<h2>User Registration</h2>
<form action="register.php" method="post">
    <label>Username:</label><br>
    <input type="text" name="username" required><br>
    <label>Password:</label><br>
    <input type="password" name="password" required><br>
    <input type="submit" value="Register">
</form></body></p>
<p></html><br></p>Kod di atas mencipta borang HTML yang mengandungi kotak input nama pengguna dan kata laluan serta butang hantar. Kami menetapkan atribut "method" kepada "post" dan menyerahkan borang kepada "register.php". <p></p>Langkah 3: Proses penghantaran borang pendaftaran <p></p>Kini kita perlu menulis fail "register.php" untuk memproses penyerahan borang pendaftaran dan menyimpan maklumat pengguna dalam pangkalan data. <p></p><?php<p>//Sambung ke pangkalan data<br/>$servername = "localhost";<br/>$username = "yourusername";<br/>$password = "yourpassword";<br/>$dbname = "yourdatabase";<br/></p>$conn = new mysqli($servername, $username, $password, $dbname);<p></p>//Semak sambungan pangkalan data<p>jika ( $ conn->connect_error) {<br><pre class="brush:php;toolbar:false">die("Connection failed: " . $conn->connect_error);
}

//Dapatkan nilai yang diserahkan melalui borang

$username = $_POST['username'];
$password = password_hash($_POST['password'], PASSWORD_DEFAULT);

//Masukkan rekod ke dalam pangkalan data

$sql = "MASUKKAN KE DALAM pengguna (nama pengguna, kata laluan) NILAI ('$nama pengguna' , '$password ')";

if ($conn->query($sql) === TRUE) {

echo "Registration successful";
} lain {

echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();

?>

Kod di atas mula-mula bersambung ke pangkalan data. Ia kemudiannya mendapat nama pengguna dan kata laluan daripada nilai borang yang diserahkan dan menyimpan cincang kata laluan ke dalam pangkalan data menggunakan fungsi "password_hash". Akhirnya, ia melaksanakan pernyataan SQL untuk memasukkan nama pengguna dan kata laluan cincang ke dalam jadual "pengguna".

Langkah 4: Buat borang log masuk

Sekarang kita perlu mencipta borang log masuk pengguna untuk mengesahkan identiti pengguna. Kami akan menggunakan kod HTML dan PHP untuk membuat borang.



<title>User Login</title>

;

<h2>User Login</h2>
<form action="login.php" method="post">
    <label>Username:</label><br>
    <input type="text" name="username" required><br>
    <label>Password:</label><br>
    <input type="password" name="password" required><br>
    <input type="submit" value="Login">
</form>


Kod di atas mencipta borang HTML yang mengandungi kotak input nama pengguna dan kata laluan serta butang hantar. Kami menetapkan atribut "kaedah" kepada "siaran" dan menyerahkan borang kepada "login.php".

Langkah 5: Proses penyerahan borang log masuk

Kini kita perlu menulis fail "login.php" untuk memproses penyerahan borang log masuk dan mengesahkan identiti pengguna.

//Sambung ke pangkalan data

$servername = "localhost";
$username = "yourusername";
$password = "yourpassword";
$dbname = "yourdatabase";

$conn = new mysqli($servername, $username, $password, $dbname);

//Semak sambungan pangkalan data

jika ( $ conn->connect_error) {


}
die("Connection failed: " . $conn->connect_error);

//Dapatkan nilai yang diserahkan melalui borang

$username = $_POST['username'];

$password = $_POST['password'];

//Dapatkan maklumat pengguna daripada pangkalan data

$sql = "SELECT * FROM users WHERE username = '$username'";

$result = $conn ->query($sql);

if ($result->num_rows == 1) {

} lain {
$row = $result->fetch_assoc();
if (password_verify($password, $row['password'])) {
    echo "Login successful";
} else {
    echo "Invalid username or password";
}

}
echo "Invalid username or password";

$conn->close();

?>


Kod di atas mula-mula bersambung ke pangkalan data. Ia kemudian mendapat nama pengguna dan kata laluan daripada nilai borang yang diserahkan. Seterusnya, ia melaksanakan pernyataan SELECT untuk mendapatkan semula rekod yang mengandungi nama pengguna itu daripada jadual "pengguna". Jika rekod ditemui, cincang kata laluan rekod itu dibandingkan dengan kata laluan yang diserahkan. Jika kata laluan sepadan, keluarkan "Log masuk berjaya", jika tidak keluarkan "Nama pengguna atau kata laluan tidak sah".

Ringkasan

Dalam artikel ini, kami melaksanakan sistem pendaftaran dan log masuk pengguna menggunakan pangkalan data PHP dan MySQL. Dalam artikel ini, kami belajar cara:

  • Tubuhkan pangkalan data MySQL dan buat jadual "pengguna";
  • Buat borang pendaftaran dan log masuk pengguna
  • Gunakan PHP untuk memproses penyerahan borang dan menyimpan maklumat pengguna dalam pangkalan data ;
  • Sahkan identiti pengguna dan keluarkan maklumat yang sepadan.

Dalam aplikasi praktikal, kami boleh mengubah suai dan memanjangkannya mengikut keperluan.

Atas ialah kandungan terperinci Cara menggunakan php untuk melaksanakan pendaftaran pengguna dan log masuk. 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