Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk membangunkan sistem pengurusan pengguna dalam CMS

Cara menggunakan PHP untuk membangunkan sistem pengurusan pengguna dalam CMS

PHPz
PHPzasal
2023-06-21 17:24:401003semak imbas

Dengan pembangunan Internet, sistem pengurusan kandungan (CMS) telah menjadi alat biasa untuk pembinaan, pembangunan dan pengurusan laman web. Antaranya, sistem pengurusan pengguna dalam CMS sangat penting Sistem pengurusan pengguna membolehkan pentadbir laman web mengurus pengguna berdaftar laman web dan mengurus maklumat pengguna, kebenaran dan kunci.

Dalam artikel ini, kami akan memperkenalkan cara menggunakan PHP untuk membangunkan sistem pengurusan pengguna dalam CMS, membolehkan anda memahami operasi asas dan idea reka bentuk sistem pengurusan pengguna, dan membantu anda melaksanakan pengurusan pengguna tapak web dengan lebih baik.

1. Reka bentuk pangkalan data

Pertama, kita perlu mereka bentuk jadual data pengguna dalam pangkalan data ini digunakan untuk menyimpan maklumat asas dan kebenaran pengguna, seperti nama pengguna, kata laluan , e-mel, Telefon dan maklumat lain. Antaranya, hak pengguna dibahagikan kepada pentadbir dan pengguna biasa Pentadbir mempunyai kuasa untuk mengurus pengguna dan pelbagai operasi, manakala pengguna biasa hanya mempunyai hak akses.

Jadual data pengguna direka bentuk seperti berikut:

BUAT JADUAL users (
id int(11) BUKAN NULL AUTO_INCREMENT,
username varchar(50 ) NOT NULL,
password varchar(255) NOT NULL,
email varchar(255) NOT NULL,
phone varchar(50) DEFAULT NULL,
type tinyint (4 ) BUKAN NULL LALAI '1',
KUNCI UTAMA (id)
) ENGINE=CARSET LAALA InnoDB=utf8;

Halaman pendaftaran pengguna

Pengguna halaman pendaftaran Merupakan borang yang menyenaraikan nama pengguna, kata laluan, alamat e-mel dan maklumat lain untuk diisi dan diserahkan oleh pengguna. Di sebalik tabir, sistem menerima dan mengesahkan data borang, mencipta akaun pengguna baharu dan menyimpannya dalam pangkalan data. Kod untuk halaman pendaftaran pengguna adalah seperti berikut:

c3e21731d9b4c344826bcb52eb926b95
100db36a723c770d327fc0aef2ce13b1
a801d9c20ab268ecdf000c4cd37b7338

<title>Register - CMS User Management System</title>
<link href="style.css" rel="stylesheet">

9c3bca370b5104690d9ef395f2c5f8d1
3c30aa6c4c72dd8ead30672a51b803a7🎜

<div class="container">
    <h1>Register</h1>
    <form method="post">
        <label>Username</label>
        <input type="text" name="username" required>
        <label>Password</label>
        <input type="password" name="password" required>
        <label>Email</label>
        <input type="email" name="email" required>
        <label>Phone</label>
        <input type="text" name="phone">
        <label>Type</label>
        <select name="type">
            <option value="1">Regular User</option>
            <option value="2">Administrator</option>
        </select>
        <button type="submit">Register</button>
    </form>
</div>

36cc49f0c466276486e50c850b7e4956

73a6ac4ed44ffec12cee46588e518a5e

3. Halaman log masuk pengguna

Halaman log masuk pengguna digunakan untuk mengesahkan sama ada akaun dan kata laluan dimasukkan oleh pengguna boleh dipadankan dengan jayanya dalam pangkalan data, untuk memastikan bahawa pengguna adalah pengguna yang sah. Jika pengesahan berjaya, sistem akan mengubah hala pengguna ke halaman utama CMS, jika pengesahan gagal, mesej ralat dipaparkan kepada pengguna. Kod untuk halaman log masuk pengguna adalah seperti berikut:

2452a170718acc10fe13df36a699d4e9
100db36a723c770d327fc0aef2ce13b1
a801d9c20ab268ecdf000c4cd37b7338
<title>Login - CMS User Management System</title>
<link href="style.css" rel="stylesheet">
9c3bca370b5104690d9ef395f2c5f8d1

3c30aa6c4c72dd8ead30672a51b803a7🎜

<div class="container">
    <h1>Login</h1>
    <?php if (isset($error)): ?>
        <div class="error"><?php echo $error; ?></div>
    <?php endif; ?>
    <form method="post">
        <label>Username</label>
        <input type="text" name="username" required>
        <label>Password</label>
        <input type="password" name="password" required>
        <button type="submit">Login</button>
    </form>
</div>

36cc49f0c466276486e50c850b7e4956

73a6ac4ed44ffec12cee46588e518a5e


4. Halaman pengurusan pengguna

Halaman pengurusan pengguna ialah halaman teras CMS, yang membolehkan pentadbir mengurus semua pengguna tapak web , termasuk menambah, mengedit dan memadam maklumat pengguna. Sehubungan itu, antara muka pengguna hanya akan membenarkan akses dan penyuntingan maklumat akaun sendiri. Halaman ini juga perlu mengesahkan dan memproses data yang dimasukkan pengguna dengan betul untuk memastikan keselamatan dan kesesuaian sistem. Kod halaman pengurusan pengguna adalah seperti berikut:

50d992708ec61e054fa1b668c072624a

aba7b36f87decd50b18c7e3e3c150106
100db36a723c770d327fc0aef2ce13b1
a801d9c20ab268ecdf000c4cd37b7338

// Handle deleting user
$id = $_GET['delete'];
// Connect to database
$conn = new mysqli("localhost", "root", "password", "database");
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
// SQL query to delete user
$sql = "DELETE FROM users WHERE id=$id";
if ($conn->query($sql) !== TRUE) {
    echo "Error deleting record: " . $conn->error;
}
$conn->close();

9c3bca370b5104690d9ef395f2c5f8d1

3c30aa6c4c72dd8ead30672a51b803a7 >
<title>Manage Users - CMS User Management System</title>
<link href="style.css" rel="stylesheet">

36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

5. Halaman penyuntingan pengguna

Halaman penyuntingan pengguna membenarkan pentadbir mengedit maklumat pengguna semasa dan memaparkan maklumat pengguna semasa. Halaman ini memerlukan pengesahan dan pemprosesan data input pengguna yang betul untuk memastikan keselamatan dan kesesuaian data. Kod untuk halaman penyuntingan pengguna adalah seperti berikut:

7ed663914c78da5d5932c631b5d025b2aba7b36f87decd50b18c7e3e3c150106

100db36a723c770d327fc0aef2ce13b1
93f0f5c25f18dab9d176bd4f6de5d30e

// Handle form submission
$id = $_POST['id'];
$username = $_POST['username'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$type = $_POST['type'];
// Connect to database
$conn = new mysqli("localhost", "root", "password", "database");
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
// SQL query to update user
$sql = "UPDATE users SET username='$username', email='$email', phone='$phone', type=$type WHERE id=$id";
if ($conn->query($sql) !== TRUE) {
    echo "Error updating record: " . $conn->error;
}
$conn->close();

bf50363c6e436fdce30d4322adb92dc5

// Display user editing form
$id = $_GET['id'];
// Connect to database
$conn = new mysqli("localhost", "root", "password", "database");
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
// SQL query to select user
$sql = "SELECT * FROM users WHERE id=$id";
$result = $conn->query($sql);
if ($result->num_rows == 1) {
    $row = $result->fetch_assoc();
    $username = $row['username'];
    $email = $row['email'];
    $phone = $row['phone'];
    $type = $row['type'];
} else {
    header("Location: manage.php");
}
$conn->close();

36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

Petua:

Gunakan pernyataan yang disediakan PHP dan pengikatan parameter Kaedah untuk mengelakkan serangan suntikan SQL.

    Jangan simpan kata laluan teks yang jelas dalam sistem pengurusan pengguna CMS anda. Pencincangan kata laluan PHP (password_hash()) hendaklah digunakan untuk menyulitkan dan menyahsulit kata laluan pengguna.
  1. Untuk penetapan semula kata laluan, modul ini juga harus menjadi tanggungjawab pentadbir. Hantar pautan tetapan semula kata laluan ke e-mel pengguna dengan memasukkan alamat e-mel mereka. Ini akan membolehkan pengguna menetapkan semula kata laluan mereka dan meneruskan dengan cara mereka sendiri.
  2. Untuk meningkatkan keselamatan dan kebolehgunaan sistem pengurusan pengguna CMS anda, anda boleh menggunakan ciri berikut:
  3. Tambah keperluan kekuatan kata laluan.
Tambahkan kod pengesahan untuk menghalang bot.

Paksa pengguna memilih kata laluan yang kukuh untuk melindungi akaun mereka.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk membangunkan sistem pengurusan pengguna dalam CMS. 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