Bài 10: Tạo trang tìm kiếm và hiển thị thông tin chi tiết các sản phẩm được tìm thấy:
Phân tích yêu cầu:
- Thực hiện việc tìm kiếm dựa trên tên sữa (tương đối) do người dùng nhập vào và hiển thị theo định dạng như hình trên nếu như tìm thấy, và thông báo: “Không tìm thấy sản phẩm này” nếu không thấy
- Cho biết có bao nhiêu sản phẩm được tìm thấy
Hướng dẫn giải:
- Lấy giá trị tên sữa trên Form và gán cho biến tên sữa
- Đọc bảng dùng mysql_query(…) với điều kiện lọc là tên sữa (tương đối) giống với tên sữa trong bảng: mysql_query(“SELECT * FROM SUA, LOAI_SUA, HANG_SUA WHERE SUA.Ma_loai_sua = LOAI_SUA.Ma_loai_sua AND SUA.Ma_hang_sua = HANG_SUA.Ma_hang_sua and TEN_SUA like ‘%$ten_sua%’ ”);
- Đếm số sản phẩm thoả mãn điều kiện (tìm thấy) bằng hàm
Có thể bạn quan tâm!
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 10
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 11
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 12
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 14
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 15
- Hướng dẫn thực hành Ứng dụng dữ liệu web - 16
Xem toàn bộ 145 trang tài liệu này.
mysql_num_rows(…)
- Duyệt các mẩu tin có được bằng hàm mysql_fetch_row(…)
while ($row = mysql_fetch_row ($result))
{
o Đối với mỗi mẩu tin thoả điều kiện được duyệt, xuất ra một table có hai dòng, dòng đầu là tên sữa (in đậm, canh giữa) cùng với tên hãng sữa, dòng thứ hai có hai cột, cột đầu là hình ảnh có nguồn
được lấy từ cột hình trong CSDL, cột thứ hai là các thông tin còn lại của sữa (có dùng number_format(…) để định dạng giá tiền)
}
BUỔI THỰC HÀNH SỐ 10
Bài 11: Tạo trang tìm kiếm nâng cao và hiển thị thông tin chi tiết các sản phẩm được tìm thấy:
Phân tích yêu cầu:
- Thực hiện việc tìm kiếm dựa trên loại sữa, hãng sữa mà người dùng chọn và tên sữa (tương đối) do người dùng nhập vào và hiển thị như hình trên nếu như tìm thấy, và thông báo “Không tìm thấy sản phẩm này” nếu không tìm thấy
- Cho biết có bao nhiêu sản phẩm được tìm thấy
Hướng dẫn giải:
- Lấy giá trị mã hãng sữa, mã loại sữa và tên sữa trên Form
- Đọc bảng với điều kiện lọc là mã hãng sữa, mã loại sữa và tên sữa (tương đối) giống với tên sữa trong bảng:
Mysql_query(“SELECT * FROM SUA, (LOAI_SUA, HANG_SUA
WHERE SUA.Ma_loai_sua = LOAI_SUA.Ma_loai_sua AND SUA.Ma_hang_sua = HANG_SUA.Ma_hang_sua and TEN_SUA like ‘%$ten_sua%’ and SUA.Ma_hang_sua = ‘$hang_sua’ and SUA.Ma_loai_sua = ‘%loai’ ”)
- Đếm số sản phẩm thoả điều kiện (tìm thấy) bằng hàm mysql_num_rows(…)
- Duyệt các mẩu tin có được bằng hàm mysql_fetch_row(…) while ($row = mysql_fetch_row($result))
{
o Đối với mỗi mẩu tin thoả điều kiện được duyệt, xuất ra một table có hai dòng, dòng đầu là tên sữa (in đậm, canh giữa), cùng với hãng sữa, dòng thứ hai có hai cột, cột đầu là hình ảnh có nguồn gốc được lấy từ cột hình trong CSDL, cột thứ hai là các thông tin còn lại của sữa (có dùng number_format(…) để định dạng giá tiền)
}
Bài 12: Tạo trang thêm mới sản phẩm:
Kết quả sau khi thêm mới thành công
Phân tích yêu cầu:
- Thực hiện việc thêm mới một sữa vào bảng sữa sau khi đã kiểm tra dữ liệu nhập vào hợp lệ, nếu không hợp lệ thì thông báo “Kiểm tra lại thông tin nhập vào”
- Sau khi thêm sữa mới vào bảng sữa, hiển thị lại thông tin của sữa này theo định dạng hình trên
Hướng dẫn giải:
- Lấy các giá trị trên form và gán vào cho các biến tương ứng
- Kiểm tra các giá trị nhập vào
- Kiểm tra file hình và Upload hình này vào thư mục hinh_sua
- Thêm các thông tin mới vào bảng bằng lệnh mysql_query(“insert into sua values(các giá trị)”);
- Xuất thông tin sữa mới thêm vào bảng sữa theo định dạng: một table có hai dòng, dòng đầu là tên sữa, tên hãng sữa (in đậm, canh giữa), dòng thứ hai có hai cột, cột đầu là hình ảnh có nguồn được lấy từ cột hình trong CSDL, cột thứ hai là các thông tin còn lại của sữa (có dùng number_format(…) để định dạng giá tiền)
Bài 13: Thiết kế trang Album ảnh gia đình như sau:
Phân tích yêu cầu:
- Xử lý:
o Trang class_phan_trang.php
Trong trang này chèn vào class pager đã được cung cấp sẵn: Dùng để thực hiện các yêu cầu có liên quan đến việc phân trang
o Trang Ảnh gia đình:
Gọi sử dụng class_phan_trang.php
Kết nối và hiển thị dữ liệu dưới dạng một quyển album (liệt kê tất cả các hình ảnh có trong bảng thu_vien_gia_dinh của CSDL Album), có sử dụng các hàm phân trang thích hợp (2 hình/trang) → Hiển thị danh sách trang
Hướng dẫn giải
Xử lý:
- Trang Album gia đình:
o Gọi sử dụng các hàm của class pager trong trang class_phan_trang.php: dùng include
o Số dòng nội dung cần hiển thị cho một trang: $limit = 2
o Tìm dòng bắt đầu của mỗi trang bằng hàm findstart(…) và gán cho biến $start.
o Đếm số mẩu tin có trong bảng bằng hàm mysql_num_rows(…) và gán vào cho biến $count
o Tính tổng số trang bằng hàm findPages($count, $limit)
o Để đọc bảng dùng mysql_query(“select … Limit $start, $limit”)
o Duyệt các mẩu tin có được bằng hàm mysql_fetch_row(…)
o Tạo 1 table có background là hình quyển album như hình trên, table có 2 cột. Trong đó, mỗi cột sẽ hiển thị một hình ảnh có nguồn lấy từ cột hình của bảng thu_viên_gia_dinh trong CSDL Album
o Sau đó xuất danh sách trang theo kiểu Back|Next bằng cách gọi hàm $next_prev = nextPre($_GET[‘page’], $pages)
Bài 14: Thiết kế Form Quy đổi ngoại tệ/Vàng:
Quy đổi số tiền hoặc số vàng mà người dùng nhập vào thành tiền VNĐ
Phân tích yêu cầu:
- Thiết kế:
Các loại ngoại tệ trong list/menu:
+ Đô la Mỹ - USD
+ Đô la Úc – AUD
+ Yên Nhật – YPJ
+ Euro - EUR
Các loại vàng thuộc Rario Group
+ SJC
+ AAA
+ PNJ
- Xử lý
Ở trang Đổi ngoại tệ - vàng
Viết hàm function doitien($loai, $so_tien): đổi từ ngoại tệ sang VNĐ
Viết hàm function doivang($loai, $so_luong): đổi từ số lượng vàng sang VNĐ
Trong đó: tỷ giá của các ngoại tệ là 1 USD = 22000 VNĐ, 1 AUD = 18000 VNĐ, 1YPJ = 200VNĐ, 1 EUR = 30000 VNĐ
Đơn giá vàng: 1 chỉ SJC = 2100000 VNĐ, 1 chỉ AAA = 2000000 VNĐ, 1 chỉ PNJ = 2050000 VNĐ
Ở trang tổng hợp: (Nút Quy đổi ngoại tệ/vàng):
+ Gọi sử dụng trang Đổi ngoại tệ/vàng bằng cách dùng include
+ Gọi các hàm tương ứng để tính thành tiền VNĐ của ngoại tệ và của số lượng vàng, đồng thời tính lại tỷ giá ngoại tệ và đơn giá vàng
Hướng dẫn giải:
- Trang Đổi ngoại tệ/vàng:
o Xây dựng hai hàm là đổi ngoại tệ và đổi vàng như yêu cầu và dựa trên những số liệu được cung cấp từ đề bài
- Trang Tổng hợp (nút Quy đổi ngoại tệ/vàng)
o Dùng include (hay include_once) để gọi trang doi_ngoai_te_vang vào sử dụng
o Gọi hàm đổi tiền và đổi vàng để thực hiện tính toán.
o Dùng hàm number_format(…) để định dạng lại số tiền
Bài 15: Thiết kế trang Album ảnh gia đình như sau:
Phân tích yêu cầu:
- Xử lý
+ Trang class_phan_trang.php:
o Trong trang này chèn vào class pager đã được cung cấp sẵn: Dùng để thực hiện các yêu cầu có liên quan đến việc phân trang
+ Trang Ảnh gia đình:
o Gọi sử dụng class_phan_trang.php
o Kết nối và hiển thị dữ liệu dưới dạng một quyển album (liệt kê tất cả các hình ảnh có trong bảng thu_vien_gia_dinh của CSDL Album), có sử dụng các hàm phân trang thích hợp (2 hình/trang)
=> Hiển thị danh sách trang
Hướng dẫn giải:
- Trang Album gia đình:
o Gọi sử dụng các hàm của class pager trong trang class_phan_trang.php: dùng include
o Số dòng nội dung cần hiển thị cho một trang: $limit = 2
o Tìm dòng bắt đầu của mỗi trang bằng hàm findstart(…) và gán cho biến $start
o Đếm số mẩu tin có trong bảng bằng hàm mysql_num_rows(…) và gán vào cho biến $count