Bài tập 3.1: Xây dựng trang tìm kiếm sản phẩm Thực hiện trực tiếp trên trang tìm kiếm Truyền thông tin tìm kiếm qua địa chỉ gọi trang tìm kiếm và hiển thị thông dựa vào các tham số này. Chúng ta thấy rằng Hình 3.1: Giao diện trang tìm sản phẩm 1. Phần tìm kiếm có 03 tiêu chí tìm kiếm: Theo nhà cung cấp, giá thấp nhất và giá cao nhất. 2. Trên trang tìm kiếm có hộp chọn chứa danh sách các nhà sản xuất. 3. Sắp xếp theo thứ tự tăng giảm của giá và ngày cập nhật. Phần 02 chúng ta sẽ thực hiện lấy toàn bộ nội dung của bảng nhà sản xuất và gán vào hộp chọn. function nsx() global $id_nsx; $query = "select nsx_id, nsx_ten from nhasanxuat"; $nsx = mysql_query($query); while(list($nsx_id, $nsx_ten) = mysql_fetch_array($nsx))
if($nsx_id == $id_nsx) echo "<option value=$nsx_ten selected=\"selected\">$nsx_ten</option>"; Chúng ta kiểm tra khi load trang: echo "<option value=$nsx_ten>$nsx_ten</option>"; Nếu có tồn tại tham số id_nsx, id_lsp thì chúng ta tạo câu lệnh tìm kiếm so khớp với gia trị này. $id_nsx = 0; if(isset($_get['id_nsx'])) $id_nsx = $_GET['id_nsx']; $id_lsp = 0; if(isset($_get['id_lsp'])) $id_lsp = $_GET['id_lsp']; // tìm danh sách sản phẩm function TimSanPham($sortby, $order) global $image_edit_path; global $image_delete_path; global $image_imageedit_path; global $image_noimage_path; global $image_path; global $id_nsx; global $id_lsp; $query = "select a.sp_id, sp_ten, lsp_ten, nsx_ten, sp_gia, sp_mota_ngan, DATE_FORMAT(sp_ngaydang, '%d-%m-%y'), sp_soluong from sanpham a if($id_nsx!= 0) LEFT JOIN loaisanpham b ON a.lsp_id = b.lsp_id LEFT JOIN nhasanxuat c on a.nsx_id = c.nsx_id "; if($id_lsp!= 0) $query = $query." WHERE (c.nsx_id = $id_nsx and b.lsp_id = $id_lsp) ORDER BY ".$sortby." ".$order; $query = $query." WHERE (c.nsx_id = $id_nsx) ORDER BY ".$sortby." ".$order; $result = mysql_query($query); if (mysql_num_rows($result) > 0)
while (list($id, $ten,$loai, $hang, $gia, $motangan, $ngaydang, $soluong) = mysql_fetch_array($result)) $sqlhinh = "select hsp_ten from sanpham_hinh where sp_id=$id limit 0,1"; $rhinh = mysql_query($sqlhinh); if(mysql_num_rows($rhinh)) list($hinh) = mysql_fetch_array($rhinh); $count = 1; echo "<tr>"; echo "<td class=\"sanpham\"><a href=\"?functions=sanpham_chitiet&id=$id\"> <img width='130' height='97' src=\"".(isset($hinh)?($image_path."small_".$hinh):$image_noimage_path)." \"><br/> <span class=\"tensanpham\">".$ten."</span></a><br/> Giá: <span class=\"gia\">".number_format($gia, 0, ',', '.')."</span> đ</td>"; while ($count <=3) if(list($id, $ten, $loai, $hang, $gia, $motangan, $ngaydang, $soluong) = mysql_fetch_array($result)) $sqlhinh = "select hsp_ten from sanpham_hinh where sp_id=$id limit 0,1"; $rhinh = mysql_query($sqlhinh); if(mysql_num_rows($rhinh)) list($hinh) = mysql_fetch_array($rhinh); $count++; echo "<td class=\"sanpham\"><a href=\"?functions=sanpham_chitiet&id=$id\"> <img width='130' height='97' src=\"".(isset($hinh)?($image_path."small_".$hinh):$image_noimage_path)." \"><br/> <span class=\"tensanpham\">".$ten."</span></a><br/> Giá: <span class=\"gia\">".number_format($gia, 0, ',', '.')."</span> đ</td>"; break; echo "</tr>";
echo "<tr><td class='khongdulieu' colspan='4'>chưa có dữ liệu</td></tr>"; Gán thông tin lên trang tìm kiếm như sau: <table width="100%" border="0" cellpadding="0" cellspacing="7" class="tablesanpham"> <tr> <td colspan="4" width="100%" class="timkiem"> <form id="form1" name="form1" method="post" action=""> Tùy chọn <input type="text" name="txttuychon" /> <select name="slhang" id="slhang"> <option>tất cả các hãng</option> <?php nsx();?> <select name="slgiatu" id="slgiatu"> <option>giá từ</option> <option value="1000">1.000.000</option> <option value="3000">3.000.000</option> <option value="8000">8.000.000</option> <select name="slgiaden" id="slgiaden"> <option>giá đến</option> <option value="3000">3.000.000</option> <option value="8000">8.000.000</option> <option value="20000">20.000.000</option> <input name="btnsearch" type="submit" class="btnsearch" id="btnsearch" value=" " onclick="search()" /> </tr> <tr> action=""> </td> </form> <td colspan="4" class="sapxep"> <form id="frmlocsanpham" name="frmlocsanpham" method="post"
<select name="slsaptheo" onchange="document.getelementbyid('frmlocsanpham').submit();"> <option value="sp_ngaydang" <?php if ($sortby == "sp_ngaydang") echo "selected";?>>ngày cập nhật</option> <option value="sp_ten" <?php if ($sortby == "sp_ten") echo "selected";?>>tên sản phẩm</option> <select name="slthutu" onchange="document.getelementbyid('frmlocsanpham').submit();"> <option value="desc" <?php if ($order == "DESC") echo "selected";?>>giảm dần</option> <option value="asc" <?php if ($order == "ASC") echo "selected";?>>tăng dần</option> </tr> <?php?> </table> </form> </td> TimSanPham($sortby, $order);