Tiếp tục chuỗi seri tạo website hoàn chỉnh với PHP, phần này mình sẽ hướng dẫn các bạn tạo trang Thêm thành viên. Trang này sẽ cho phép người quản trị điền vào các thông tin và thêm người dùng vào hệ thống.
1. Thiết kế giao diện trang Thêm thành viên
Về giao diện trang thêm thành viên thì nó cũng tương đồng với trang chỉnh sửa thành viên mà mình đã tạo ở bài trước (phần 12).
Tại thư mục admin, các bạn tạo 1 file mới đặt tên là them-thanh-vien.php.
Trang Thêm thành viên này sẽ bao gồm các trường như sau :
- Username : Tên đăng nhập tương ứng với trường username trong database
- Mật khẩu : Mật khẩu người dùng tương ứng với trường password trong database
- Họ tên : Họ tên đầy đủ của người dùng tương ứng với trường fullname trong database
- Địa chỉ email : Địa chỉ email người dùng tương ứng với trường email trong database
- Quyền : Quyền của người dùng tương ứng với trường permision trong database
<?php session_start(); ?> <?php require_once("includes/connection.php");?> <?php include("includes/permission.php");?> <?php include ("includes/header.php"); ?> <form action="them-thanh-vien.php" method="post"> <table> <tr> <td colspan="2"> <h3>Thêm thành viên</h3> </td> </tr> <tr> <td nowrap="nowrap">Username :</td> <td><input type="text" name="username" id="username" value="" ></td> </tr> <tr> <td nowrap="nowrap">Mật khẩu :</td> <td><input type="password" name="password" id="password" value="" ></td> </tr> <tr> <td nowrap="nowrap">Họ tên :</td> <td><input type="text" name="fullname" id="fullname" value="" ></td> </tr> <tr> <td nowrap="nowrap">Địa chỉ email :</td> <td><input type="text" id="email" name="email" value=""></td> </tr> <tr> <td nowrap="nowrap">Quyền :</td> <td> <select id="permission" name="permission"> <option value="0">Thành viên thường</option> <option value="1">Admin cấp 1</option> <option value="2">Admin cấp 2</option> </select> </td> </tr> <tr> <td nowrap="nowrap">Block người dùng :</td> <td><input type="checkbox" id="is_block" name="is_block" value="1" ></td> </tr> <tr> <td colspan="2" align="center"><input type="submit" name="btn_submit" value="Thêm thành viên"></td> </tr> </table> </form> <?php include "includes/footer.php" ?>
Chạy trang này trên trình duyệt chúng ta sẽ được giao diện như sau
2. Code xử lý thêm thành viên
Tiếp đến chúng ta sẽ code xử lý các tác vụ khi người dùng ấn vào nút Thêm thành viên.
Trong phần này chúng ta sẽ tiến hành xử lý bao gồm các bước sau
a) Kiểm tra người dùng đã ấn nút Thêm người dùng hay chưa
if (isset($_POST["btn_submit"])) {
b) Lấy thông tin người dùng bằng phương thức POST khi ấn vào nút Thêm người dùng
$username = $_POST["username"]; $password = $_POST["password"]; $name = $_POST["fullname"]; $email = $_POST["email"]; $permission = $_POST["permission"]; $is_block = 0; if (isset($_POST["is_block"])) { $is_block = $_POST["is_block"]; }
c) Tiến hành kiểm tra thông tin người dùng đã nhập đầy đủ hay chưa
if ($username == "" || $password == "" || $name == "" || $email == "" || $permission == "") { echo "Bạn cần điền đầy đủ thông tin !"; }
d) Nếu thông tin người dùng đã nhập đầy đủ rồi thì sẽ tiến hành lưu thông tin người dùng vào database và chuyển hướng trang về trang quản lý thành viên
else{ // Viết câu lệnh thêm thông tin người dùng $sql = "INSERT INTO users (username, password, fullname, email, permision, is_block, createdate) VALUES ('$username', '$password', '$name', '$email', '$permission', '$is_block', now())"; // thực thi câu $sql với biến conn lấy từ file connection.php $result = mysqli_query($conn,$sql); if (!$result) { echo "Người dùng đã tồn tại vui lòng không trùng username và email !"; }else{ header('Location: quan-ly-thanh-vien.php'); } }
3. Toàn bộ code trang them-thanh-vien.php
<?php session_start(); ?> <?php require_once("includes/connection.php");?> <?php include("includes/permission.php");?> <?php include ("includes/header.php"); ?> <?php if (isset($_POST["btn_submit"])) { //lấy thông tin từ các form bằng phương thức POST $username = $_POST["username"]; $password = $_POST["password"]; $name = $_POST["fullname"]; $email = $_POST["email"]; $permission = $_POST["permission"]; $is_block = 0; if (isset($_POST["is_block"])) { $is_block = $_POST["is_block"]; } if ($username == "" || $password == "" || $name == "" || $email == "" || $permission == "") { echo "Bạn cần điền đầy đủ thông tin !"; }else{ // Viết câu lệnh thêm thông tin người dùng $sql = "INSERT INTO users (username, password, fullname, email, permision, is_block, createdate) VALUES ('$username', '$password', '$name', '$email', '$permission', '$is_block', now())"; // thực thi câu $sql với biến conn lấy từ file connection.php $result = mysqli_query($conn,$sql); if (!$result) { echo "Người dùng đã tồn tại vui lòng không trùng username và email !"; }else{ header('Location: quan-ly-thanh-vien.php'); } } } ?> <form action="them-thanh-vien.php" method="post"> <table> <tr> <td colspan="2"> <h3>Thêm thành viên</h3> </td> </tr> <tr> <td nowrap="nowrap">Username :</td> <td><input type="text" name="username" id="username" value="" ></td> </tr> <tr> <td nowrap="nowrap">Mật khẩu :</td> <td><input type="password" name="password" id="password" value="" ></td> </tr> <tr> <td nowrap="nowrap">Họ tên :</td> <td><input type="text" name="fullname" id="fullname" value="" ></td> </tr> <tr> <td nowrap="nowrap">Địa chỉ email :</td> <td><input type="text" id="email" name="email" value=""></td> </tr> <tr> <td nowrap="nowrap">Quyền :</td> <td> <select id="permission" name="permission"> <option value="0">Thành viên thường</option> <option value="1">Admin cấp 1</option> <option value="2">Admin cấp 2</option> </select> </td> </tr> <tr> <td nowrap="nowrap">Block người dùng :</td> <td><input type="checkbox" id="is_block" name="is_block" value="1" ></td> </tr> <tr> <td colspan="2" align="center"><input type="submit" name="btn_submit" value="Thêm thành viên"></td> </tr> </table> </form> <?php include "includes/footer.php" ?>
Giờ thì các bạn chạy trang Thêm thành viên trên trình duyệt và tiến hành thêm thông tin người dùng vào database nhé.
Có bất kỳ thắc mắc thì các bạn để lại bình luận bên dưới, mình sẽ giải đáp.
Chúc các bạn học tốt !
Nguồn: kungfuphp.com