GIỚI THIỆU VỀ ĐỀ TÀI VÀ CƠ SỞ LÝ THUYẾT
Tổng quan về bài toán
1.1.1 Lý do chọn đề tài
Ngày nay, khách hàng thường phải đến cửa hàng để lựa chọn sản phẩm cần thiết Tại cửa hàng, họ tự mình chọn lựa và tiếp xúc trực tiếp với thông tin chi tiết về các sản phẩm Sau khi đã chọn xong, khách hàng sẽ đến quầy thanh toán để thanh toán Nếu không đủ tài chính, họ có thể trả lại một số sản phẩm đã chọn để giảm bớt chi phí.
Trong thời đại thông tin phát triển nhanh chóng, việc tạo lập một trang web giới thiệu và bán mỹ phẩm với thông tin chi tiết đã trở thành nhu cầu thiết yếu cho mọi người.
WEBSITE SHOP MỸ PHẨM là một ví dụ điển hình mà em chọn
1.1.2 Phạm vi của đề tài Đề tài XÂY DỰNG WEBSITE SHOP MỸ PHẨM
1.1.3 Nhiệm vụ của đề tài
Để xây dựng một trang web bán mỹ phẩm, bạn cần thực hiện các bước sau: đầu tiên, tìm hiểu cách xây dựng trang web; tiếp theo, tham khảo một số website bán mỹ phẩm hiện có; sau đó, nghiên cứu các hệ cơ sở dữ liệu hiện nay; cuối cùng, tiến hành phân tích, thiết kế và lập trình cho trang web của bạn.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Hệ quản trị cơ sở dữ liệu MYSQL
MySQL là hệ quản trị cơ sở dữ liệu phổ biến cho các ứng dụng web quy mô vừa và nhỏ Mặc dù không phải là một cơ sở dữ liệu lớn, MySQL cung cấp giao diện thân thiện trên cả Windows và Linux, giúp người dùng dễ dàng thực hiện các thao tác liên quan đến quản lý cơ sở dữ liệu.
Khi làm việc với cơ sở dữ liệu MySQL, cần thực hiện các bước như đăng ký kết nối, tạo cơ sở dữ liệu, quản lý người dùng và phân quyền sử dụng Ngoài ra, việc thiết kế bảng (Table) và xử lý dữ liệu cũng rất quan trọng Người dùng có thể sử dụng trình quản lý đồ họa hoặc thực hiện các lệnh thông qua dòng lệnh để thao tác với cơ sở dữ liệu.
Trong đề tài này sử dụng ngôn ngữ lập trình PHP kết hợp với cơ sở dữ liệu
SQL để xây dựng thử nghiệm trang website bán mỹ phẩm trên mạng
Giới thiệu về PHP
PHP, được giới thiệu vào năm 1994, là một ngôn ngữ lập trình có cấu trúc và tính năng đa dạng Ngôn ngữ này có khả năng hoạt động trên các hệ điều hành như Windows NT/2000/2003 và Unix, mang đến sự linh hoạt cho người lập trình.
IIS và Apache là hai máy chủ web phổ biến, nhưng PHP cũng có khả năng chạy trên nhiều nền tảng khác Nếu bạn cần hỗ trợ, PHP cung cấp nhiều hàm tích hợp sẵn, giúp công việc của bạn trở nên thuận tiện và dễ dàng hơn.
PHP (Hyper Preprocessor) là ngôn ngữ lập trình kịch bản mã nguồn mở, chủ yếu được sử dụng để phát triển ứng dụng web Với khả năng nhúng dễ dàng vào HTML, PHP được tối ưu hóa cho các ứng dụng web, mang lại tốc độ nhanh và cú pháp tương tự như C và Java Sự dễ học và thời gian phát triển ngắn đã giúp PHP trở thành ngôn ngữ lập trình web phổ biến nhất trên toàn cầu.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Cấu trúc một trang PHP :
Trang PHP đơn giản là một trang văn bản với phần mở rộng là php, gồm có 3 phần:
HTML (Ngôn ngữ đánh dấu siêu văn bản) là ngôn ngữ sử dụng các thẻ (Tag) để định dạng và đánh dấu nội dung như văn bản và hình ảnh, giúp trình duyệt web hiểu và hiển thị chúng trên màn hình.
Code PHP bắt đầu và kết thúc bằng cặp thẻ
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Phân tích bài toán
Phương pháp bán hàng trực tuyến cho các shop mỹ phẩm hiện nay tương tự như cách hoạt động của siêu thị, với điểm khác biệt chính là khách hàng thực hiện mua sắm qua mạng.
Chương trình cho phép cửa hàng thực hiện một số vấn đề sau:
- Quản lí các mặt hàng: Thêm, sửa, xóa, cập nhật các loại sản phẩm mới
- Quản lí các quyền đăng nhập vào hệ thống với các quyền: Quản trị, trực tuyến, bình thường
- Quản lí cơ cấu tổ chức: Thêm, xóa, sửa
Chương trình cho phép khách hàng lựa chọn các sản phẩm:
- Xem các loại sản phẩm và các phụ kiện mà mình quan tâm, tham khảo giá, xem chi tiết sản phẩm
Những yêu cầu đối với hệ thống
Với một bài toán bán hàng trực tuyến trên mạng thì hoạt động của nó bao gồm:
- Hoạt động của khách hàng
- Hoạt động của nhà quản lý
Hoạt động của khách hàng:
Khi khách hàng truy cập vào cửa hàng trực tuyến, họ thường quan tâm đến các sản phẩm được bán, thông tin chi tiết về chúng, giá cả và phương thức thanh toán Do đó, để đáp ứng những nhu cầu cơ bản này, cửa hàng trực tuyến cần cung cấp đầy đủ thông tin về sản phẩm, giá cả rõ ràng và các lựa chọn thanh toán linh hoạt.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Khi bán hàng, cần cung cấp 8 thông tin quan trọng và dễ thao tác, bao gồm hình ảnh và thông tin chi tiết về các loại sản phẩm.
Hoạt động của nhà quản lý:
Người quản lý giao tiếp và theo dõi khách hàng thông qua các đơn đặt hàng, nơi khách hàng có thể cung cấp thông tin cá nhân Dựa trên những thông tin này, nhà quản lý sẽ thực hiện giao hàng một cách hiệu quả Hóa đơn sẽ được gửi kèm theo đơn hàng hoặc qua email mà khách hàng đã cung cấp.
Nhà quản lý cần thường xuyên cập nhật thông tin chi tiết về sản phẩm và danh mục sản phẩm trên website, bao gồm việc giới thiệu sản phẩm mới và điều chỉnh thông tin hiện có cho phù hợp Họ cũng phải quản lý thông tin thành viên và đơn đặt hàng để đảm bảo xử lý kịp thời và chính xác Bên cạnh đó, việc theo dõi số lượng khách truy cập và ý kiến phản hồi của khách hàng là rất quan trọng để đáp ứng nhu cầu của người tiêu dùng Cuối cùng, quản lý các hình thức thanh toán cũng là một nhiệm vụ không thể thiếu.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Phân tích thiết kế hệ thống ở mức quan niệm
Thực thế 1: tbl_content_categogy
STT Tên thuộc tính Kiểu dữ liệu Mô tả
2 Code Varchar Mã nội dung
3 Name Varchar Tên nội dung
4 Parent Int Danh mục cha
6 Detail_short Text Mô tả ngắn
7 Detail Longtext Mô tả chi tiết
8 Image Varchar Hình danh mục
9 Image_lagre Varchar Hình ảnh lớn
10 Sort Int Thứ tự sắp xếp
11 Status Int Trạng thái hiện thị
12 New Int Sản phẩm mới
13 Date_added Datetime Ngày thêm
14 Last_modifiel Datetime Ngày chỉnh sửa gần nhất
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Thực thể 2: tbl_product_Catagory
TT Tên thuộc tính Kiểu dữ liệu Mô tả
1 id int Mã danh mục sản phẩm
2 code Varchar Mã danh mục sản phẩm nhập
3 name varchar Tên danh mục sản phẩm
4 Parent Varchar Danh mục gốc
5 Sort int Thứ tự sắp xếp
6 Status int Trạng thái danh mục
STT Tên thuộc tính Kiểu dữ liệu Mô tả
2 Code Varchar Mã đơn hàng
3 Member_id Int Mã khách hàng
4 Date_added Datetime Ngày thêm
5 Last_modifiel Datetime Lần chỉnh sửa gần nhất
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
STT Tên thuộc tính Kiểu dữ liệu Mô tả
1 Id Int Mã thành viên
2 Name Varchar Tên thành viên
5 Company Varchar Tên công ty
6 Address Varchar Địa chỉ công ty
8 City Varchar Tên thành phố
9 country Varchar Tên quốc gia
10 Tel Varchar Số điện thoại chính
11 Tel1 Varchar Số điện thoại phụ
13 Email Varchar Email khách hàng
15 Website Varchar Trang cá nhân
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
16 Uid Varchar Tên đăng nhập
18 Status Int Trạng thái hiện thị
19 Date_added Datetime Ngày đặt hàng
20 Last_modified Datetime Lần chỉnh sửa gần nhất
22 Code Varchar Mã đặt hàng
23 Orderid Varchar Mã đơn hàng
24 Hoten Varchar Tên người nhận hàng
25 Gioitinh Int Giới tính người nhận hàng
26 Ngaysinh Varchar Ngày sinh người nhận hàng
28 Cmnd Varchar Số cmnd của người nhận hàng
31 Dienthoaichinh Varchar Điện thoại chính người nhận
32 Dienthoaiphu Varchar Điện thoại phụ
33 Diachi Varrchar Địa chỉ người nhận hàng
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
35 Tptinh Varchar Thành phố/ tỉnh
37 Soluong Int So luong san pham
38 Goi qua Int Chọn dịch vụ gói quà
39 Giaohang Int Chọn dịch vụ
40 Tangthiep Int Chọn dịch vụ tặng thiệp
42 Phuongthuc Int Chọn phương thức thanh toán
43 Idsp Varchar Id sản phẩm
STT Tên thuộc tính Kiểu dữ liệu Mô tả
1 Id Int Mã tự tạo
2 code Varchar Mã đối tượng
3 Name Varchar Tên đối tượng
4 Date_added Datetime Ngày thêm
5 Date_modified Datetime Ngày chỉnh sửa
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
STT Tên thuộc tính Kiểu dữ liệu Mô tả
2 Code Varchar Mã nội dung
3 Name Varchar Tên nội dung
4 Parent Int Danh mục cha
6 Detail_short Text Mô tả ngắn
7 Detail Longtext Mô tả chi tiết
9 Image_lagre Varchar Ảnh lớn
10 Sort Int Thứ tự sắp xếp
11 Status Int Trạng thái hiện thị
12 New Int Sản phẩm mới
13 Date_added Datetime Ngày thêm
14 Last_modifiel Datetime Ngày chỉnh sửa gần nhất
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Thực thể 7: tbl_order_detail
STT Tên thuộc tính Kiểu dữ liệu Mô tả
2 Order_id Int Mã đơn hàng
3 Product_id Int Mã sản phẩm
4 Quantity Int Chất lượng sản phẩm
5 Price Float Giá sản phẩm
6 Status Int Trạng thái hiện thị (có/ không)
STT Tên thuộc tính Kiểu dữ liệu Mô tả
1 Session_id Varchar Mã lưu trữ
2 Activity Datetime Ngày giờ truy cập
3 Member Enum Thành viên hoặc khách
4 Ip_address Varchar Địa chỉ ip truy cập
5 Use_agent Varchar IP truy cập lại (khác hàng quen)
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
STT Tên thuộc tính Kiểu dữ liệu Mô tả
1 id int Mã sản phẩm
3 code Varchar Mã sản phẩm(tự nhập)
2 name nvarchar(255) Tên sản phẩm
3 parent int Danh mục gốc
4 size int Kích thước sản phẩm
5 detail longtext Mô tả chi tiết
6 image Varchar Hình ảnh hiển thị
7 image_lange Varchar Hình ảnh (lớn)
8 sort int Thứ tự sắp xếp sản phẩm
9 status int Trạng thái hiện thị
10 pro_new int Sản phẩm mới
11 pro_sell Int Sản phẩm đã bán
12 date_added datetine Ngày đặt hàng
13 last_modified Datetine Lần chỉnh sửa gần nhất
14 price Int Giá sản phẩm
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
15 luotxem Int Tổng lượt xem
STT Tên thuộc tính Kiểu dữ liệu Mô tả
2 Uid Varchar Tên đăng nhập
Thành phần xử lý ở mức quan niệm
Biểu đồ phân cấp chức năng:
Quản lý sản phẩm Quản lý Đặt hàng Quản lý thông tin Quản lý danh mục sản phẩm
Cập nhật thông tin sản phẩm
Theo dõi thông tin khách đặt hàng
Cập nhật thông tin Cập nhật danh mục sản phẩm
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Biểu đồ luồng dữ liệu:
Biểu đồ luồng dữ liệu là phương tiện diễn tả chức năng xử lý và việc trao đổi thông tin giữa các chức năng
Các ký hiệu đƣợc dùng trong biểu đồ:
+ Luồng dữ liệu: Là một tuyến truyền dẫn thông tin vào hay ra một chức năng nào đó
+ Chức năng: Là một quá trình biến đổi dữ liệu
+ Các kho dữ liệu: Là một dữ liệu được lưu lại, để có thể được truy cập nhiều lần về sau
+ Tác nhân ngoài: Một tác nhân ngoài là một thực thể ngoài hệ thống, có trao đổi thông tin với hệ thống
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Biểu đồ luồng dữ liệu mức khung cảnh:
Biểu đồ mức đỉnh: Đáp ứng thông tin yêu cầu Liên hệ
Thông tin khách hàng Thông tin sản phẩm
Người quản lý Khách hàng
Quản lý danh mục sản phẩm
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Biểu đồ mức dưới đỉnh:
Cập nhật danh mục sp
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Phân tích thiết kế hệ thống mức logic
Chuyển từ mô hình thực thể sang mô hình quan hệ
Mô hình khái niệm là một cách biểu diễn tất cả các đối tượng, trong đó mỗi đối tượng tương ứng với một thực thể trong thế giới thực, từ đó thực hiện chuyển đổi sang mô hình quan hệ.
Ta được mô hình quan hệ như sau: tbl_Product (ID, Code, Name, Parent, Size, Detai, Image, Image_lange, Sort,
The article outlines various database tables essential for managing an online platform, including tbl_Product_Category, which organizes product information by ID, code, name, and status It details tbl_member, capturing user information such as name, contact details, and demographic data The tbl_config table manages configuration settings, while tbl_content and tbl_content_category provide structures for content management, featuring fields for subject, details, and images Additionally, tbl_order and tbl_Order_Detail track orders and their specifics, including product quantities and prices Lastly, tbl_user and tbl_visitor tables record user credentials and visitor activities, ensuring comprehensive data management for enhanced user experience and operational efficiency.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Thiết kế các bảng dữ liệu:
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
GIỚI THIỆU WEBSITE SHOP MỸ PHẨM
Các module chức năng chính
Các module dành cho người dùng: o Module giới thiệu:
- cho phép trình bày thông tin giới thiệu về cửa hàng… o module đăng nhập, đăng ký thành viên:
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
- Cho phép khách hàng đăng ký thành viên, đăng nhập hệ thống để có thể thực hiện việc đặt hàng o Module chọn hình thức thanh toán( đang phát triển )
- Cho phép khách hàng được chọn hình thức thanh toán qua ATM hay thanh toán trực tiếp, hay chuyển tiền qua bưu điện o Module giỏ hàng:
- Gồm các chức năng giỏ hàng, đơn hàng,…khách hàng có thể chọn hàng và đăng ký đặt mua một cách dễ dàng o Module ngôn ngữ ( đang phát triền )
- Khách hàng có thể tuỳ chọn thêm ngôn ngữ tiếng Anh o Các Module tiện ích:
- Cho phép khách hàng có thể tìm kiếm dễ dàng các sản phẩm
Quản lý banner quảng cáo trên website một cách hiệu quả, cho phép tạo banner cho các dịp khuyến mãi và lễ tết Ngoài ra, hệ thống cũng hỗ trợ đăng quảng cáo cho các công ty bên ngoài.
Module liên hệ trực tuyến:
- Hỗ trợ khách hàng trực tuyến qua Yahoo, skype
- cho phép người sử dụng dễ dàng liên hệ đặt hàng, gửi những đánh giá, nhận xét yêu cầu của mình cho cửa hàng
Module bộ đếm số người đã truy cập website:
- Cung cấp thông tin về số lượt truy cập website
Các module dành cho người quản trị :
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
28 o Module quản lý sản phẩm :
- Cho phép cập nhật thông tin về sản phẩm và dịch vụ như thông số, giá cả, hình ảnh… o Module quản lý danh mục sản phẩm:
- Cho phép cập nhật nội dung thông tin danh mục sản phẩm o Module quản lý các hình thức thanh toán:
- Quản lý các hình thức thanh toán của khách hàng như: Thanh toán trực tiếp, chuyển tiền, hay thanh toán qua ATM o Module quản lý khách hàng:
- Quản lý danh sách các thành viên, và các đơn hàng… o Module quản lý hệ thống:
- Quản lý các danh mục hệ thống như tổng lượt truy cập, đơn vị tiền tệ, và việc thay đổi thông tin truy cập của admin.
Giao diện người sử dụng
Khi bắt đầu vào website, trang index.php sẽ được gọi Tại đây người dùng có thể chọn các loại mỹ phẩm mà mình ưa thích
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Hình 3.1: Giao diện trang chủ
Khi người dùng nhấp vào một sản phẩm mà họ quan tâm, thông tin chi tiết và giá của sản phẩm sẽ hiển thị Nếu họ quyết định mua sản phẩm này, chỉ cần điền số lượng cần mua và nhấn nút "Đặt hàng".
Khi người dùng nhấn nút đặt hàng, thông tin chi tiết về sản phẩm sẽ được thêm vào giỏ hàng Nếu người dùng chưa đăng nhập, họ sẽ được chuyển đến trang đăng nhập tiếp theo.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Hình 3.3 Giao diện người dùng đăng nhập Khi đó giỏ hàng hiện thị:
Khách hàng cần cung cấp đầy đủ thông tin về số lượng sản phẩm, thông tin người nhận và các dịch vụ đi kèm Để tiếp tục quá trình đặt hàng, vui lòng nhấn vào nút xác nhận.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
31 nút: Tiếp tục chọn hệ thống sẽ trở về trang chủ để khách hàng có thể tiếp tục lựa chọn các sản phẩm khác.
Giao diện người quản trị
Trên giao diện đăng nhập, ban quản trị có thể quản lý thông tin của website, bao gồm việc chỉnh sửa, thêm hoặc bớt chức năng, bài viết, và sản phẩm.
Hình 3.5 Đăng nhập Admin Đăng nhập thành công sẽ hiện thị giao diện:
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Hình 3.6 Giao diện quản trị
Trong menu Danh mục sản phẩm cho phép người quản trị thêm, xoá, chỉnh sửa sản phẩm và danh mục sản phẩm Giao diện của nó hiện thị:
Hình 3.7 Giao diện quản trị Danh mục sản phẩm
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Hình 3.8 Giao diện quản trị Sản phẩm
Tại đây người quản trị có thể Thêm mới, sửa, xoá thông tin các sản phẩm, hay danh mục sản phẩm
Khi chọn Nhập mới sản phẩm thì hiện ra giao diện sau:
Hình 3.9 Giao diện nhập mới sản phẩm
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Trong danh mục nội dung, người quản trị có thể thêm, xóa và chỉnh sửa các thông tin quan trọng như giới thiệu cửa hàng, thông tin liên hệ và hỗ trợ trực tuyến cho người dùng.
Giao diện quản trị hiện thị như sau:
Hình 3.10 Giao diện chỉnh sửa mục Giới thiệu
Hình 3.11 Giao diện Nhập mới trong mục Hỗ trợ trực tuyến Yahoo
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Trong Hình thức thanh toán cho phép người quản trị cập nhật, chỉnh sửa thông tin về các hình thức thanh toán Giao diện chỉnh sửa như sau:
Hình 3.12 Giao diện chỉnh sửa thông tin ATM
Hình 3.13 Giao diện chỉnh sửa thông tin mục Muc trực tiếp tại đại lý
Trong Menu Danh mục khách hàng, người quản trị có thể theo dõi, sửa đổi và xóa thông tin về thành viên cùng với các đơn hàng, đồng thời cập nhật thông tin liên quan đến việc hoàn tất mua hàng.
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Khi bạn nhấp vào mục Thành viên, hệ thống sẽ hiển thị danh sách tất cả các thành viên đã đăng ký Tại đây, người quản trị có thể thực hiện các thao tác như thêm mới, xóa hoặc chỉnh sửa thông tin của các thành viên.
Sau đây là giao diện nhập mới thành viên:
Hình 3.14 Giao diện nhập mới Thành viên
Khi chọn mục Đơn hàng, danh sách tất cả các đơn hàng của khách hàng sẽ được hiển thị Tại đây, người quản trị có khả năng theo dõi, chỉnh sửa và xóa thông tin các đơn hàng Giao diện quản trị đơn hàng được thiết kế trực quan và dễ sử dụng.
Hình 3.15 Giao diện hiện thị danh sách Đơn hàng
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh
Trong danh mục hệ thống, người quản trị có thể điều chỉnh thông tin cấu hình, bao gồm số lượng khách truy cập và đơn vị tiền tệ Giao diện đổi mật khẩu của admin được thiết kế để thuận tiện cho việc thay đổi thông tin truy cập.
Hình 3.16 Giao diện Đổi mật khẩu admin
Nguyễn Thị Oanh – Lớp 46K1 CNTT – ĐH Vinh