Chủ Nhật, 6 tháng 10, 2013

KHÓA HỌC PHP MYSQL( quản lý thành viên)

Đây là khóa học php mysql miễn phí của Việt Tâm Đức dành cho các bạn. Ở các bài trước tôi đã giới thiệu và hướng dẫn cách viết ứng dụng đăng nhập.  Tiếp theo bài này tôi sẽ hướng dẫn các bạn viết ứng dụng quản lý trang thành viên.
 Ở bài này, chúng ta sẽ cùng nghiên cứu về ứng dụng quản trị các tài khoản. Hay nói cách khác là hệ thống lại toàn bộ danh sách của những thành viên trên website của chúng ta.
Sau khi đăng nhập vào trang admin người dùng sẽ được đẩy sang trang quản lý admin, tại đây chỉ những ai đã đăng nhập đúng với username và password trong cơ sở dữ liệu và có quyền hạn level là 2(quyền hạn của admin) thì mới có thể truy xuất vào trang này. Vì vậy chúng ta cần thao tác kiểm tra session để quản lý phiên làm việc của người dùng. Đặt đoạn code sau ở những trang bạn muốn kiểm tra quyền truy cập của người sử dụng.


 <?php
sessison_start();
if(isset($_SESSION['userid']) && $_SESSION['level'] == 2)
{
// tại đây thực thi các hoạt động khi đăng nhập thành công.
}
else
{
header("location: login.php");
exit();
}
?>
Như vậy, chúng ta sẽ đặt đoạn code này ở trang quản lý user. Cụ thể tôi đặt trang này có tên file là manage_user.php. Vì dữ liệu sẽ lặp lại toàn bộ user và ứng với từng user sẽ là 1 dòng dữ liệu được lặp lại. Chúng ta sẽ xây dựng 1 bảng gồm có STT là số thứ tự của từng user được đếm trên mỗi user khi lặp, username là tên truy cập của họ, level là cấp bậc của user (1 là member và 2 là admin), edit là cột chứa các link chỉnh sửa user, del là cột xóa các user.

<table align='center' width='400' border='1'>
<tr>
<td>STT</td>
<td>Username</td>
<td>Level</td>
<td>Edit</td>
<td>Del</td>
</tr>
Tiếp theo, chúng ta sẽ kết nối CSDL để tiến hành lặp các user.

<?php
 $conn=mysql_connect("localhost","root","root") or die("can't connect this database");
 mysql_select_db("project",$conn);
$sql="select * from user order by id DESC";
$query=mysql_query($sql);
 if(mysql_num_rows($query) == "")
 {
 echo "<tr><td colspan='5' align='center'>Chua co username nao</td></tr>";
 }

 ?>
Đoạn code ở trên tiến hành lựa chọn tất cả user có trong database. Đồng thời kiểm tra xem trong database có tồn tại user nào không. Nếu không sẽ xuất ra thông báo "chưa có username nào". Ngược lại khi có tồn tại user chúng ta sẽ xử lý tiếp như sau:

 <?php
$stt=0;
while($row=mysql_fetch_array($query))
{
$stt++;
echo "<tr>";
echo "<td>$stt</td>";
echo "<td>$row['username']</td>";
if($row['level'] == "1")
{
echo "<td>Member</td>";
}
else
{
echo "<td>Admin</td>";
}
echo "<td><a href='edit_user.php?userid=$row[id]'>Edit</a></td>";
echo "<td><a href='del_user.php?userid=$row[id]'>Del</a></td>";
echo "</tr>";
?>
Ở đây ta dùng biến $stt để làm bộ đếm cho số lượng user. Như vậy, cứ mỗi lần lặp 1 user thì bộ đếm này sẽ tự động tăng lên 1 đơn vị. Sau đó, chúng ta đưa dữ liệu vào mảng và truyền các giá trị trên vào các cột dữ liệu trong bảng.

STT
Username
Level
Edit
Del
1
Hoan
Admin
Edit
Del
2
Huy
Member
Edit
Del
3
Hoc
Member
Edit
Del
4
Hoai
Admin
Edit
Del

Tới đây ta đã kết thúc thao tác quản lý các user đang tồn tại trong cơ sở dữ liệu. Sau đây là toàn bộ code trong ứng dụng này.

<?php
sesison_start();
if(isset($_SESSION['userid']) && $_SESSION['level'] == 2)
{

?>
<table align='center' width='400' border='1'>
<tr>
<td>STT</td>
<td>Username</td>
<td>Level</td>
<td>Edit</td>
<td>Del</td>
</tr>
<?
$conn=mysql_connect("localhost","root","root") or die("can't connect this database");
mysql_select_db("project",$conn);
$sql="select * from user order by id DESC";
$query=mysql_query($sql);
if(mysql_num_rows($query) == "")
{
echo "<tr><td colspan=5 align=center>Chua co username nao</td></tr>";
}
else
{
$stt=0;
while($row=mysql_fetch_array($query))
{
$stt++;
echo "<tr>";
echo "<td>$stt</td>";
echo "<td>$row['username']</td>";
if($row['level'] == "1")
{
echo "<td>Member</td>";
}
else
{
echo "<td>Admin</td>";
}
echo "<td><a href='edit_user.php?userid=$row[id]'>Edit</a></td>";
echo "<td><a href='del_user.php?userid=$row[id]'>Del</a></td>";
echo "</tr>";
}

?>
</table>


Chúc các bạn thành công.
 (Đặng Gia Hoàn- Dev tại công ty cổ phần Việt Tâm Đức)
Để có thể nắm vững kiến thức cơ bản và nâng cao PHP & MySQL bạn hãy đăng ký khóa học PHP & MySQL của chúng tôi: KHÓA HỌC PHP MYSQL

Không có nhận xét nào:

Đăng nhận xét