<?php if(!isset($bien_bao_mat)){exit();} ?> <?php $so_dong_tren_mot_trang=20; if(!isset($_GET['trang'])){$_GET['trang']=1;} $tv="select count(*) from hoa_don"; $tv_1=mysql_query($tv); $tv_2=mysql_fetch_array($tv_1); $so_trang=ceil($tv_2[0]/$so_dong_tren_mot_trang); $vtbd=($_GET['trang']-1)*$so_dong_tren_mot_trang; $tv="select * from hoa_don order by id desc limit $vtbd,$so_dong_tren_mot_trang"; $tv_1=mysql_query($tv); ?> <table width="990px" class="tb_a1" > <tr style="background:#CCFFFF;height:40px;" > <td width="370px" ><b>Tên</b></td> <td width="300px" ><b>Email</b></td> <td width="120px" ><b>Điện thoại</b></td> <td align="center" width="100px" ><b>Sửa</b></td> <td align="center" width="100px" ><b>Xóa</b></td> </tr> <?php while($tv_2=mysql_fetch_array($tv_1)) { $id=$tv_2['id']; $ten=$tv_2['ten_nguoi_mua']; $email=$tv_2['email']; $dien_thoai=$tv_2['dien_thoai']; $link_xem="?thamso=xem_hoa_don&id=".$id."&trang=".$_GET['trang']; $link_xoa="?xoa_hoa_don=co&id=".$id; ?> <tr class="a_1" > <td> <a href="<?php echo $link_xem; ?>" class="lk_a1" ><?php echo $ten; ?></a> </td> <td> <?php echo $email; ?> </td> <td> <?php echo $dien_thoai; ?> </td> <td align="center" > <a href="<?php echo $link_xem; ?>" class="lk_a1" >Xem</a> </td> <td align="center" > <a href="<?php echo $link_xoa; ?>" class="lk_a1" >Xóa</a> </td> </tr> <?php } ?> <tr> <td colspan="5" align="center" > <br> <?php for($i=1;$i<=$so_trang;$i++) { $link_phan_trang="?thamso=hoa_don&trang=".$i; echo "<a href='$link_phan_trang' class='phan_trang' >"; echo $i; echo "</a> "; } ?> <br><br> </td> </tr> </table> |
- Bạn xem giải thích code (phần chữ xanh) của file 'quan_ly_hoa_don.php' ở phần bên dưới :
<?php if(!isset($bien_bao_mat)){exit();} // xuất ra trang trắng nếu truy cập trực tiếp vào file này ?> <?php $so_dong_tren_mot_trang=20; if(!isset($_GET['trang'])){$_GET['trang']=1;} // nếu không tồn tại biến 'trang' trên url thì biến này có giá trị là 1 , làm như vậy là để tính biến $vtbd // biến $vtbd là vị trí bắt đầu giới hạn menu trong câu truy vấn select , limit phía dưới , giá trị biến $vtbd tùy theo biến 'trang' trên url // (nghĩa là giá trị của biến $vtbd tùy vào trang đang hiện hành) $tv="select count(*) from hoa_don"; // đếm số dòng trong bảng 'hoa_don' $tv_1=mysql_query($tv); $tv_2=mysql_fetch_array($tv_1); $so_trang=ceil($tv_2[0]/$so_dong_tren_mot_trang); // tính số trang xuất ra của phần quản lý hóa đơn (nếu lớn hơn 20 thì số trang lớn hơn 1 ) // số trang bằng tổng dữ liệu trong bảng 'hoa_don' chia cho số dòng (số hóa đơn) trong 1 trang rồi làm tròn số $vtbd=($_GET['trang']-1)*$so_dong_tren_mot_trang; // tính vị trí bắt đầu giới hạn của bảng 'hoa_don' tùy theo trang hiện hành // ở đây , nếu là trang 1 thì $vtbd=0 , nếu là trang 2 thì $vtbd=20 , nếu là trang 3 thì $vtbd=40 ... $tv="select * from hoa_don order by id desc limit $vtbd,$so_dong_tren_mot_trang"; // lệnh truy cập vào bảng 'hoa_don' sắp xếp theo 'id' tăng dần với giới hạn là tùy theo trang hiện tại // ban đầu thì vị trí bắt đầu giới hạn là 0 // lưu ý là sắp xếp theo 'desc' , nghĩa là xuất hóa đơn mới ra trước $tv_1=mysql_query($tv); ?> <table width="990px" class="tb_a1" > // xuất ra bảng chứa danh sách các hóa đơn cới class là 'tb_a1' , class này sẽ được dùng trong file 'giao_dien.css' <tr style="background:#CCFFFF;height:40px;" > // hàng đầu tiên có chiều cao 40px và có màu nền là 1 mã màu (#CCFFFF) <td width="370px" ><b>Tên</b></td> <td width="300px" ><b>Email</b></td> <td width="120px" ><b>Điện thoại</b></td> <td align="center" width="100px" ><b>Sửa</b></td> <td align="center" width="100px" ><b>Xóa</b></td> </tr> <?php while($tv_2=mysql_fetch_array($tv_1)) // xuất dòng dữ liệu từ bảng 'hoa_don' ra , dữ liệu được gán vào biến $tv_2 (biến này là 1 mảng) { $id=$tv_2['id']; // gán cột 'id' của dòng dữ liệu đang được lấy dữ liệu vào biến $id $ten=$tv_2['ten_nguoi_mua']; // gán cột 'ten_nguoi_mua' của dòng dữ liệu đang được lấy dữ liệu vào biến $ten $email=$tv_2['email']; // gán cột 'email' của dòng dữ liệu đang được lấy dữ liệu vào biến $email $dien_thoai=$tv_2['dien_thoai']; // gán cột 'dien_thoai' của dòng dữ liệu đang được lấy dữ liệu vào biến $dien_thoai $link_xem="?thamso=xem_hoa_don&id=".$id."&trang=".$_GET['trang']; // tạo link xem hóa đơn với biến 'thamso' trên url có giá trị là 'xem_hoa_don' // link xem hóa đơn cũng có biến 'id' trên url là cột 'id' của dòng dữ liệu đang được lấy // ở đây truyền thêm biến 'trang' trên url để tạo liên kết "Đóng" từ trang xem hóa đơn // (phải có biến này để biết vị trí trang trước đó mà trở về sau khi bấm nút "Đóng" ) $link_xoa="?xoa_hoa_don=co&id=".$id; // tạo link xóa hóa đơn với biến 'xoa_hoa_don' trên url có giá trị là 'co' // link xóa cũng có biến 'id' trên url là cột 'id' của dòng dữ liệu đang được lấy ?> <tr class="a_1" > // xuất hàng chứa hóa đơn xuất ra từ bảng 'hoa_don' , hàng này có class là 'a_1' <td> <a href="<?php echo $link_xem; ?>" class="lk_a1" ><?php echo $ten; ?></a> // xuất tên người gửi hóa đơn , đồng thời xuất ra liên kết xem hóa đơn với class là 'lk_a1' // (class này được định dạng css trong file 'giao_dien.css') </td> <td> <?php echo $email; ?> // xuất email ra // (class này được định dạng css trong file 'giao_dien.css') </td> <td> <?php echo $dien_thoai; ?> // xuất số điện thoại ra // (class này được định dạng css trong file 'giao_dien.css') </td> <td align="center" > <a href="<?php echo $link_xem; ?>" class="lk_a1" >Xem</a> // xuất liên kết xem hóa đơn với class là 'lk_a1' // (class này được định dạng css trong file 'giao_dien.css') </td> <td align="center" > <a href="<?php echo $link_xoa; ?>" class="lk_a1" >Xóa</a> // xuất liên kết xóa hóa đơn với class là 'lk_a1' // (class này được định dạng css trong file 'giao_dien.css') </td> </tr> <?php } ?> <tr> <td colspan="5" align="center" > <br> <?php for($i=1;$i<=$so_trang;$i++) // chạy từ trang 1 đến trang cuối cùng { $link_phan_trang="?thamso=hoa_don&trang=".$i; // tạo liên kết phân trang , liên kết phân trang đến trang nào thì biến 'trang' trên url có giá trị là trang đó echo "<a href='$link_phan_trang' class='phan_trang' >"; // xuất liên kết phân trang với class là 'phan_trang' echo $i; echo "</a> "; } ?> <br><br> </td> </tr> </table> |
- Mình thực hiện mua thêm 2 đơn hàng rồi bấm vào liên kết 'Quản lý hóa đơn' tại trang chủ của trang quản trị thì nhận được kết quả sau :
- Khi mình bấm vào liên kết quản lý hóa đơn (ở file 'trang_chu_2.php' ) => web sẽ đến trang ?thamso=hoa_don , web sẽ tải file 'dieu_huong.php' và gọi file 'quan_ly_hoa_don.php' bằng đoạn code sau :
case "hoa_don": include("chuc_nang/hoa_don/quan_ly_hoa_don.php"); break; |
- Từ đó sẽ xuất ra trang quản lý hóa đơn