Pages

12 thg 11, 2010

Bài 13: Viết ứng dụng quản lý thành viên bằng PHP và MYSQL

Ở các bài trước, chúng ta đã cùng tìm hiểu về việc thêm một thành viên thiết lập trang đăng nhập vào hệ thống administrator. Ở 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 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 sử 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.

01
02sessison_start();
03if(isset($_SESSION['userid']) && $_SESSION['level'] == 2)
04{
05 // tại đây thực thi các hoạt động khi đăng nhập thành công.
06}
07else
08{
09 header("location: login.php");
10 exit();
11}
12?>

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.

1
2
3STT
4Username
5Level
6Edit
7Del
8

Tiếp theo, chúng ta sẽ kết nối CSDL để tiến hành lặp các user.

01
02$conn=mysql_connect("localhost","root","root") or die("can't connect this database");
03mysql_select_db("project",$conn);
04$sql="select * from user order by id DESC";
05$query=mysql_query($sql);
06if(mysql_num_rows($query) == "")
07{
";
08echo "
Chua co username nao
09}
10?>

Đ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:

01
02$stt=0;
03while($row=mysql_fetch_array($query))
04{
05$stt++;
";
06echo "
";
07echo "$stt
";
08echo "$row[username]
09if($row[level] == "1")
10{
";
11echo "Member
12}
13else
14{
";
15echo "Admin
16}
";
17echo "Edit
";
18echo "Del
";
19echo "
20?>

Ở đâ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.


Bài 13: Viết ứng dụng quản lý thành viên bằng PHP & MYSQL

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.

01
02sesison_start();
03if(isset($_SESSION['userid']) && $_SESSION['level'] == 2)
04{
05?>
06
07
08STT
09Username
10Level
11Edit
12Del
13
14
15$conn=mysql_connect("localhost","root","root") or die("can't connect this database");
16mysql_select_db("project",$conn);
17$sql="select * from user order by id DESC";
18$query=mysql_query($sql);
19if(mysql_num_rows($query) == "")
20{
";
21echo "
Chua co username nao
22}
23else
24{
25$stt=0;
26while($row=mysql_fetch_array($query))
27{
28$stt++;
";
29echo "
";
30echo "$stt
";
31echo "$row[username]
32if($row[level] == "1")
33{
";
34echo "Member
35}
36else
37{
";
38echo "Admin
39}
";
40echo "Edit
";
41echo "Del
";
42echo "
43}
44
45}
46?>
47

Ở bài sau, chúng ta lại tiếp tục tìm hiểu ứng dụng chỉnh sửa và xóa một thành viên trong PHP và MYSQL như thế nào. Mọi sự góp ý, cũng như thắc mắc của các bạn dành cho bài viết vui lòng sử dụng tính năng thảo luận tại diễn đàn. Hoặc thông qua việc liên hệ của hệ thống website. Mong sẽ nhận được nhiều ý kiến đóng góp từ các bạn.


(Bùi Quốc Huy)

0 nhận xét:

Đăng nhận xét

Powered By Blogger