Báo Cáo
Báo Cáo
Báo Cáo
[Document subtitle]
LỚP/KỲ : WEB18322_FA2023
LỜI NÓI ĐẦU
Dự án mẫu là một môn học trong chương trình đào tạo CNTT của hệ cao đẳng thực
hành FPT Polytechnic.
Mục tiêu của môn học này là cung cấp cho sinh viên một cái nhìn tổng quan về
việc làm dự án phần mềm theo qui trình công nghiệp sát với thực tế hiện nay.
Qua môn học này sinh viên cần biết sử dụng tài liệu dự án được xây dựng sẵn để
xây dựng ra một phần mềm – đó là ứng dụng web giới thiệu sản phẩm cho một
siêu thị.
Trong chương trình đào tạo theo tiêu chuẩn CDIO thì sinh viên cần được huấn
luyện các kỹ năng C, D, I, O (Conceiving — Designing — Implementing —
Operating). Dự án này rèn luyện cho sinh viên các kỹ năng I và O đồng thời làm
nền tảng cho sinh viên rèn luyện các kỹ năng còn lại C và D qua các môn học tiếp
sau, trong đó đặc biệt là dự án 1 và dự án 2 và cả thực tập tốt nghiệp.
Với phương pháp đào tạo đảo ngược như vậy chúng tôi mong muốn sinh viên nghề
không những có đủ kỹ năng thực hiện mà còn được rèn luyện thêm kỹ phân tích và
thiết kế nhằm giúp sinh viên phát triển sự nghiệp lâu dài học học tiếp lên các cấp
độ cao hơn.
MỤC LỤC
1 Phân tích..............................................................................................................4
1.1 Hiện trạng......................................................................................................4
1.2 Yêu cầu hệ thống..........................................................................................4
1.3 Use case........................................................................................................5
1.3.1 Đặc tả chức năng....................................................................................6
1.3.2 Đặc tả các thực thể..................................................................................7
2 Thiết kế................................................................................................................8
2.1 Mô hình triển khai.........................................................................................8
2.2 Thiết kế CSDL..............................................................................................8
2.2.1 Sơ đồ quan hệ thực thể...........................................................................9
2.2.2 Thiết kế chi tiết các thực thể...................................................................9
2.3 Thiết kế giao diện........................................................................................11
2.3.1 Sitemap.................................................................................................11
2.3.2 Thiết kế phần quản trị...........................................................................12
2.3.3 Thiết kế phần khách hàng.....................................................................18
3 Thực hiện viết mã..............................................................................................23
3.1 Viết mã tạo CSDL.......................................................................................23
3.1.1 Tạo CSDL.............................................................................................23
3.1.2 SQL truy vấn và thao tác bảng.............................................................24
3.2 Lập trình CSDL...........................................................................................26
3.2.1 Xây dựng thư viện PDO.......................................................................27
3.2.2 Xây dựng các lớp DAO........................................................................29
3.3 Viết mã cho ứng dụng.................................................................................37
3.3.1 Tổ chức website....................................................................................37
3.3.2 Thư viện tiện ích Global.php................................................................37
3.3.3 Mô hình tổ chức giao diện....................................................................39
3.3.4 Xây dựng admin...................................................................................39
3.3.5 Xây dựng site........................................................................................70
4 Kiểm lỗi.............................................................................................................96
4.1 Kiểm lỗi form quản lý khách hàng.............................................................96
4.2 Kiểm lỗi form quản lý loại hàng.................................................................96
4.3 Kiểm lỗi form quản lý hàng hóa.................................................................96
4.4 Kiểm lỗi form đăng nhập............................................................................97
4.5 Kiểm lỗi form đăng ký................................................................................97
4.6 Kiểm lỗi form đổi mật khẩu........................................................................97
4.7 Kiểm lỗi form quên mật khẩu.....................................................................97
5 Đóng gói và triển khai.......................................................................................97
1 GIỚI THIỆU DỰ ÁN
1.1 GIỚI THIỆU XSHOP
X-Shop là một chuỗi cửa hàng nhỏ trên khắp cả nước, kinh doanh mặt hàng
thời trang.
Hiện cửa hàng muốn kết hợp giữa buôn bán online và offline nhằm cải thiện
và nâng cao chất lượng phục vụ, cũng như thu nhận phản hồi từ người tiêu
dùng một cách rõ ràng
Loại hàng Số hàng hóa Giá trung bình Giá thấp nhất Giá cao nhất
Mô tả sơ đồ
3.3.2 GIAO DIỆN TRANG CHÍNH
Phác thảo giao diện cho cửa sổ chính và mô tả các hoạt động trên giao diện
GIAO DIỆN:
MÔ TẢ HOẠT ĐỘNG
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 Logo Click Trở về trang chính
2 Trang chủ Click Trở về trang chủ
3 Giới thiệu Click Hiển thị trang giới thiệu
4 Liên hệ Click Hiển thị trang liên hệ
5 Hỏi đáp Click Hiển thị trang hỏi đáp
6 Quên mật khẩu Click Hiển thị trang quên mật khẩu
(Box tài khoản)
7 Đăng ký thành Click Hiển thị trang đăng ký
viên (Box tài
khoản)
8 Hệ thống liên kế Click Hiển thị hàng hóa thuộc danh mục tương ứng
danh mục
MÔ TẢ HOẠT ĐỘNG
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 Sản phẩm Click Vào trang chi tiết sản phẩm
2 Danh mục Click Vào trang từng sản phẩm
3 Sản phẩm bán Click Vào trang chi tiết sản phẩm
chạy
MÔ TẢ HOẠT ĐỘNG:
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 ….
2
MÔ TẢ HOẠT ĐỘNG:
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 GỬI CLICK GỬI LẠI MẬT KHẨU ĐÃ QUÊN
2 NHẬP LẠI CLICK NHẬP LẠI FORM
MÔ TẢ HOẠT ĐỘNG:
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 CẬP NHẬT CLICK CẬP NHẬT LẠI THÔNG TIN TÀI KHOẢN
2 NHẬP LẠI CLICK NHẬP LẠI
MÔ TẢ HOẠT ĐỘNG
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 SỬA CLICK VÀO TRANG SỬA SẢN PHẨM
MÔ TẢ HOẠT ĐỘNG:
TT ĐIỀU KHIỂN SỰ KIỆN MÔ TẢ HOẠT ĐỘNG
1 XÓA CLICK XÓA TÀI KHOẢN
4 THỰC HIỆN DỰ ÁN
4.1 TẠO GIAO DIỆN ADMIN
Mỗi của sổ chức năng cần làm rõ các mục sau đây:
o Hình giao diện của cửa sổ chức năng
o Bảng mô tả các điều khiển (control) và tên của chúng
Ràng buộc: Mô tả ràng buộc của các quan hệ
4.2.2 CHI TIẾT CÁC BẢNG
Mỗi bảng cần viết theo hướng dẫn sau đây:
4.2.2.1 Bảng loai
CẤU TRÚC BẢNG
TÊN CỘT KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
ma_loai VARCHAR(20) PK, NOT NULL Mã loại
ten_loai VARCHAR(50) NOT NULL Tên loại
4.2.2.2 Bảng hang_hoa
CẤU TRÚC BẢNG
TÊN CỘT KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
id INT(11) PK, NOT NULL id hàng hóa
name VARCHAR(255) NOT NULL tên hàng hóa
price DOUBLE(10,2) NOT NULL giá hàng hóa
img VARCHAR(255) NULL ảnh hàng hóa
mota TEXT NULL mô tả hàng hóa
luotxem INT(11) NULL lượt xem hàng hóa
trangthai INT(1) NOT NULL trạng thái hàng hóa
iddm INT(11) NOT NULL Id danh mục
MÃ LỆNH TẠO BẢNG
CREATE TABLE `sanpham` (
`id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
`price` double(10,2) NOT NULL DEFAULT 0.00,
`img` varchar(255) NOT NULL,
`mota` text NOT NULL,
`luotxem` int(11) NOT NULL DEFAULT 0,
`iddm` int(11) NOT NULL
)
CÂU LỆNH SQL CƠ BẢN
select * from sanpham where 1 order by id desc limit 0,9
select * from sanpham where 1 order by luotxem desc limit 0,10
select * from sanpham where id =
4.2.2.3 Bảng khach_hang
CẤU TRÚC BẢNG
TÊN CỘT KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
Id INT(11) NOT NULL Id user
User VARCHAR(50) NOT NULL Name user
Pass VARCHAR(50) NOT NULL Mật khẩu
Email VARCHAR(255) NOT NULL Địa chỉ email
Address VARCHAR(255) NULL Địa chỉ
Tel VARCHAR(20) NULL Sô điện thoại
Role TINYINT(4) NOT NULL Vai trò
MÃ LỆNH TẠO BẢNG
CREATE TABLE `taikhoan` (
`id` int(11) NOT NULL,
`user` varchar(50) NOT NULL,
`pass` varchar(50) NOT NULL,
`email` varchar(255) NOT NULL,
`address` varchar(255) DEFAULT NULL,
`tel` varchar(20) DEFAULT NULL,
`role` int(11) NOT NULL DEFAULT 0
)
Pdo.php là thư viện truy xuất CSDL cơ bản nhất mà một DAO cụ thể phải có. Các
phương thức thực hiện truy xuất CSDL được mô tả như sau:
TT PHƯƠNG THỨC MÔ TẢ HOẠT ĐỘNG
1 pdo_get_connection() Kết nối cơ sở dữ liệu
2 pdo_execute($sql) Thêm, cập nhật, xóa dữ liệu với câu lệnh sql
3 pdo_query($sql) Truy vấn nhiều dữ liệu với câu lệnh sql
4 pdo_query_one($sql) Truy vấn một record dữ liệu với câu lệnh sql
5 pdo_query_value($sql) Trả về một giá trị với câu lệnh sql
Trên đây chỉ là các hoạt động truy xuất CSDL cơ bản. Trong một lớp DAO cụ thể,
các DAO con sẽ viết mã cho các phương thức này với các câu SQL tương ứng.
4.3.2.2 Loại (model/danhmuc.php)
DIỄN GIẢI
THÀNH PHẦN MÔ TẢ
loadall_danhmuc() Truy vấn danh sách danh mục
loadone_danhmuc($iddm) Truy vấn 1 danh mục
load_ten_dm($iddm) Truy vấn tên danh mục
insert_dm($tenloai) thêm danh mục
delete_dm($iddm) Xóa danh mục
update_danhmuc($tenloai,$iddm) Sửa danh mục
4.3.2.3 Hàng hóa (model/sanpham.php)
THÀNH PHẦN MÔ TẢ
loadall_sanpham_home() Truy vấn 9 sản phẩm mới nhất
loadall_sanpham_top10() truy vấn top 10 sản phẩm
loadall_sanpham($keyw="",$iddm=0) Truy vấn tất cả sản phẩm
loadall_blsanpham() Truy vấn Bình luận sản phẩm
loadone_sanpham($id) truy vấn 1 sản phẩm
load_sanpham_cungloai($id, $iddm) Truy vấn các sản phẩm cùng loại
insert_sanpham($tensp,$giasp, $hinh, $mota, $iddm) Thêm sản phẩm
update_sanpham($id,$iddm,$tensp,$giasp,$mota, Sửa sản phẩm
$hinh)
hard_delete($id)
soft_delete($id) Xóa tạm sản phẩm
loadall_sanphamdaxoa($keyw="",$iddm=0) truy vấn các sản phẩm xóa tạm
khoiphuc($id) Khôi phục các sản phẩm xóa tạm
….
6 ĐÓNG GÓI VÀ TRIỂN KHAI
6.1 ĐÓNG GÓI
TT THÀNH PHẦN MÔ TẢ
1 File zip source File upload host
2 xshop.sql Cơ sở dữ liệu
3 Readme.txt Hướng dẫn upload website
4 Guide.docx Hướng dẫn sử dụng tài khoản quản trị
6.2 HƯỚNG DẪN CÀI ĐẶT
Đăng ký hosting
Đăng ký domain
7 KẾT LUẬN
7.1 KHÓ KHĂN
7.2 THUẬN LỢI