Trong bài trước chúng ta đã thực hiện việc tạo giao diện cho trang quản lý thành viên, bài viết này mình sẽ tiếp tục hướng dẫn các bạn lấy dữ liệu từ database và hiển thị thông tin lên trang danh sách thành viên.

1. Viết câu query lấy dữ liệu thành viên

Đầu tiên, chúng ta sẽ thực thi truy vấn vào cơ sở dữ liệu và lấy ra toàn bộ dữ liệu trong bảng users như sau

<?php
	$sql = "SELECT * FROM users";
	$query = mysqli_query($conn,$sql);
?>

2. Chạy vòng lặp while để lấy dữ liệu

Sau khi viết câu query, tiếp đến chúng ta sẽ chạy vòng lập while để lấy dữ liệu ra

while ( $data = mysqli_fetch_array($query) ) {

Vòng lặp này sẽ có nhiệm vụ chạy qua hết mỗi row trong cơ sở dữ liệu và lấy ra các thông tin cần thiết bao gồm id, username, email, is_block, permision

Khi lấy ra được những liệu này, ta sẽ gán code động vào html tĩnh mà chúng ta đã tạo trong bài tạo giao diện trang thành viên hôm trước

<tr>
 <td><?php echo $i; ?></td>
 <td><?php echo $data['username']; ?></td>
 <td><?php echo $data['email']; ?></td>
 <td><?php echo ($data['is_block'] == 1) ? "Bị khóa" : "Không bị khóa"; ?></td>
 <td><?php echo ($data['permision'] == 0) ? "Admin" : "Thành viên thường"; ?></td>
 <td>
  <a href="chinh-sua-thanh-vien.php?id=<?php echo $id;?>">Sửa</a>
  <a href="quan-ly-thanh-vien.php?id_delete=<?php echo $id;?>">Xóa</a>
 </td>
</tr>

Việc đổ dữ liệu này rất đơn giản, chỉ là lấy dữ liệu ra và gán vào html tĩnh, duy chỉ có 1 điều các bạn để ý đó là cách viết if else rút gọn

<?php echo ($data['is_block'] == 1) ? "Bị khóa" : "Không bị khóa"; ?>

Câu lệnh bên trên là câu lệnh if else mà mình đã rút gọn, nó tương đương với câu lệnh đầy đủ như sau

if($data['is_block'] == 1){
	echo "Bị khóa";
}else{
	echo "Không bị khóa";
}

3. Toàn bộ code trang quan-ly-thanh-vien.php sau khi đã đổ dữ liệu sẽ như sau

<?php
	session_start(); 
 ?>
<?php require_once("includes/connection.php");?>
<?php include("includes/permission.php");?>
<?php include ("includes/header.php"); ?>
<?php
	$sql = "SELECT * FROM users";
	$query = mysqli_query($conn,$sql);
?>
<a href="them-thanh-vien.php">Thêm thành viên</a>
<table border="1px;" align="center">
	<thead>
		<tr>
			<td bgcolor="#E6E6FA">ID</td>
			<td bgcolor="#E6E6FA">Username</td>
			<td bgcolor="#E6E6FA">Email</td>
			<td bgcolor="#E6E6FA">Khóa tài khoản</td>
			<td bgcolor="#E6E6FA">Quyền</td>
			<td bgcolor="#E6E6FA">Hành động</td>
		<tr>
	</thead>
	<tbody>
	<?php 
		while ( $data = mysqli_fetch_array($query) ) {
			$i = 1;
			$id = $data['id'];
	?>
		<tr>
			<td><?php echo $i; ?></td>
			<td><?php echo $data['username']; ?></td>
			<td><?php echo $data['email']; ?></td>
			<td><?php echo ($data['is_block'] == 1) ? "Bị khóa" : "Không bị khóa"; ?></td>
			<td><?php echo ($data['permision'] == 0) ? "Thành viên thường" : "Admin"; ?></td>
			<td>
				<a href="chinh-sua-thanh-vien.php?id=<?php echo $id;?>">Sửa</a>
				<a href="quan-ly-thanh-vien.php?id_delete=<?php echo $id;?>">Xóa</a>
			</td>
		</tr>
	<?php 
			$i++;
		}
	?>
	</tbody>
</table>
<?php include "includes/footer.php" ?>

Tiếp đến chạy đường dẫn

http://localhost/website/admin/quan-ly-thanh-vien.php

ta sẽ được kết quả như sau

hiển thị thông tin lên trang danh sách thành viên
Hiển thị thông tin lên trang danh sách thành viên

4. Tổng kết

Như vậy mình đã hướng dẫn lấy dữ liệu từ database và hiển thị thông tin lên trang danh sách thành viên. Đây là bài hướng dẫn khá đơn giản và ngắn gọn. Tuy nhiên nó cũng là một phần riêng biệt nên mình tách ra và viết thành một bài mới để các bạn mới đỡ rối.

Bài tiếp theo mình sẽ hướng dẫn các bạn tạo trang chỉnh sửa thông tin thành viên.

Chúc các bạn thành công !

Nguồn: kungfuphp.com