TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN
HỮU NGHỊ VIỆT - HÀN
KHOA CÔNG NGHỆ THÔNG TIN
XÂY DỰNG WEBSITE BÁN HÀNG ONLINE
BẰNG LAVAREL FRAMEWORK TÓM TẮT ĐỒ ÁN TỐT NGHIỆP NGÀNH: CÔNG NGHỆ THÔNG TIN NIÊN KHÓA: 2016 - 2019 : Liễu Mạnh Tiến
HSSV
Mã HSSV : CCCT16A020 CBHD
: ThS. Nguyễn Phƣơng Tâm
Đà Nẵng, 06/2019
MỞ ĐẦU
Công nghệ thông tin là ngành đang phát triển mạnh và ngày
càng được ứng dụng rộng rãi trên nhiều lĩnh vực. Cùng với xu hướng
phát triển của các phương tiện truyền thông như báo, radio … thì
việc sử dụng internet ngày càng phổ biến. Internet mang lại một kho
thông tin khổng lồ phục vụ mọi nhu cầu và mục đích chỉ bằng một cú
nhấp chuột.
Đi kèm theo đó là nhu cầu cập nhật thông tin giải tri,tin tức xã
hội,đời sống… Và để đáp ứng nhu cầu đó thì việc website tin tức ra
đời là nhu cầu tất yếu.
Để xây dựng một website tin tức có thể dùng các ngôn ngữ lập
trình khác nhau như Java, PHP, ASP.Net …
Nhưng phù hợp và dễ tiếp cận nhất là PHP. Framework có mặt
ở mọi ngôn ngữ lập trình và nó được coi như là một tiêu chuẩn mà
khi sử dụng cần tuân thủ quy định của nó tất cả những qui định đó
nhằm giúp tạo ra một bản code sạch. Nhờ tuân thủ qui định, mà khi
làm việc nhóm, người này có thể đọc hiểu code của người kia, có thể
sử dụng lại hàm được viết bởi một người khác. Framework khá nổi
bật trong ngôn ngữ PHP là Laravel Framework đứng top 1 một trong
những framework phổ biến nhất, tiếp sau là Phalcon, Symfony2,
CodeIgniter và các framework khác. Tháng 8 năm 2014, Laravel
Framework được xem như là một dự án PHP phổ biến nhất trên
Github.
1. Lý do chọn đề tài
Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa
được xem là một trong những yếu tố mang tính quyết định hoạt động
của các chính phủ, tổ chức, cũng như của các công ty, nó đóng vai
trò hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ.
1
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và
mạng điện tử, công nghệ thông tin cũng được những công nghệ có
đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao
khác. Mạng Internet là một trong những sản phẩm có giá trị hết sức
lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền
tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu.
Giờ đây, mọi việc liên quan đến thông tin trở nên thật dễ dàng
cho người sử dụng: chỉ cần có một máy tính kết nối internet và một
dòng dữ liệu truy tìm thì gần như lập tức cả thế giới về vấn đề mà
bạn đang quan tâm sẽ hiện ra, có đầy đủ thông tin, Hìnhảnh và thậm
chí cả âm thanh nếu bạn cần…
Bằng internet, chúng ta đã thực hiện được nhiều công việc với
tốc độ nhanh hơn và chi phí thấp hơn nhiều so với cách thức truyền
thống. Chính điều này, đã thúc đẩy sự khai sinh và phát triển của
thương mại điện tử và chính phủ điện tử trên khắp thế giới , làm biến
đổi đáng kể về mặt văn hóa, nâng cao chất lượng cuộc sống con
người.
Trong hoạt động sản xuất, kinh doanh, giờ đây thương mại
điện tử đã khẳng định được vai trò xúc tiến và thúc đẩy sự phát triển
của doanh nghiệp. Đối với một cửa hàng hay shop, việc quảng bá và
giới thiệu đến khách hàng các sản phẩm mới đáp ứng được nhu cầu
của khách hàng sẽ là cần thiết. Vậy phải quảng bá thế nào, đó là xây
dựng một website cho cửa hàng của mình quảng bá các sản phẩm của
mình bán
Vì vậy, em đã thực hiện đồ án” Xây dựng website bán hàng
bằng Laravel Framework”. Sử dụng Laravel framework và hệ quản
trị MySQL.
2
Với mức độ phức tạp cộng thêm vấn đề thời gian cho nên đề
tài “Xây dựng website bán hàng bằng Laravel Framework” chỉ dừng
ở mức tìm hiểu Laravel Framework, và áp dụng xây dựng ứng dụng
thực nghiệm trang Web bán hàng trên mạng.
2. Mục tiêu và nhiệm vụ nghiên cứu
Mục tiêu:
- Xây dựng một trang web bán hàng online.
- Tìm hiểu về laravel framework.
Nhiệm vụ:
- Tìm hiểu Laravel framework, Boostrap và MySQL
- Phân tích thiết kế cơ sở dữ liệu.
- Ứng dụng kiến thức để xây dựng website
3. Đối tƣợng và phạm vi nghiên cứu
Đối tƣợng:
- Tìm hiểu Laravel framework, Boostrap và MySQL.
- Sau khi tìm hiểu sẽ vận dụng kết quả tìm hiểu được vào việc
xây dựng một website bán hàng online
Phạm vi:
- Ứng dụng dụng tại một cửa hàng bán điện thoại di động.
4. Phƣơng pháp nghiên cứu
Tìm kiếm và nghiên cứu các tài liệu về Laravel Framework và
các công nghệ có liên quan đến việc phát triển một ứng dụng web
enterprise như JMS, AngularJS, MongoDB, Maven của các tác giả
trong và ngoài nước, các bài báo, thông tin trên mạng,… sau đó chọn
lọc và sắp xếp lại theo ý tưởng của mình.
5. Ý nghĩa khoa học và ý nghĩa thực tiễn
- Ý nghĩa khoa học
3
Giúp sinh viên hiểu được Laravel framework, MySQL và
Bootstrap. Cách ứng dụng nó trong việc xây dựng một website cơ
bản.
- Ý nghĩa thực tiễn
Giúp việc việc quảng bá và giới thiệu đế khách hàng cách sản
phẩm mới đáp ứng được nhu cầu của khách hàng.
6. Nội dung của đồ án tốt nghiệp
Ngoài những nội dung như Phần mở đầu, kết luận, tài liệu
tham khảo thì nội dung chính của đồ án gồm các chương như sau:
Chương 1. Cơ sở lý thuyết.
Chương 2. Phân tích thiết kế.
Chương 3. Demo Website.
4
CHƢƠNG 1. CƠ SỞ LÝ THUYẾT
1.1. GIỚI THIỆU VỀ LARAVEL PHP FRAMEWORK
1.2. ƢU ĐIỂM CỦA LARAVEL PHP FRAMEWORK ĐỐI
VỚI PHÁT TRIỂN WEBSITE
1.3. CẤU TRÚC THƢ MỤC VÀ LUỒNG XỬ LÝ TRONG
LARAVEL
1.4. THÀNH PHẦN CƠ BẢN TRONG LARAVEL
1.4.1. Route trong laravel
1.4.2. Laravel Model
1.4.3. Laravel Controller
1.4.4. Laravel View (Master Template)
1.5. SỬ DỤNG CÁC THƢ VIỆN DÀNH CHO THIẾT KẾ
GIAO DIỆN WEBSITE VỚI LARAVEL
1.5.1. Sử dụng Boostrap CSS Framework
1.5.2. Sử dụng Jquery Javascript Framework
1.5.3. Sử dụng kỹ thuật Jquery Ajax
5
CHƢƠNG 2. PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1. ĐẶT VẤN ĐỀ
2.2. PHÂN TÍCH THIẾT KẾ
2.2.1. Yêu cầu phi chức năng
2.2.2. Yêu cầu chức năng
2.3. BIỂU ĐỒ TRƢỜNG HỢP SỬ DỤNG
Hình 2.1. Biểu đồ trường hợp sử dụng
2.3.1. Các chức năng của đối tƣợng Customer
2.3.1.1. Chức năng tìm kiếm sản phẩm
2.3.1.2. Chức năng xem thông tin sản phẩm
2.3.1.3. Chức năng giỏ hàng
2.3.1.4. Chức năng đặt hàng
2.3.2. Các chức năng của đối tƣợng Member (thành viên)
2.3.2.1. Chức năng đăng nhập
2.3.2.2. Chức năng đăng xuất
6
2.3.2.3. Chức năng đổi mật khẩu
2.3.2.4. Chức năng xem hóa đơn đã được lập
2.3.3. Chức năng của Administrator
2.3.3.1. Các chức năng quản lý Member
2.3.3.2. Các chức năng quản lý Sản Phẩm
2.3.3.3. Các chức năng quản trị người dùng
2.3.3.4. Các Chức Năng Đối Với Hóa Đơn Đặt Hàng
2.4. CƠ SỞ DỮ LIỆU QUAN HỆ
Hình 2.2. Cơ sở dữ liệu liên hệ
2.5. BIỂU ĐỒ LỚP
Hình 2.3. Biểu đồ lớp 2.6. THIẾT KẾ CƠ SỞ DỮ LIỆU VẬT LÝ TRÊN HỆ CƠ SỞ QUẢN TRỊ CSDL MYSQL 2.6.1. Bảng Customer
7
2.6.2. Bảng bill 2.6.3. Bảng categories 2.6.4. Bảng products 2.6.5. Bảng accessories 2.6.6. Bảng new
2.6.7. Bảng comment
2.6.8. Bảng user
2.7. BIỂU ĐỒ PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.7.1. Biểu đồ hoạt động
Đăng nhập
Hình 2.3. Biểu đồ hoạt động đăng nhập vào hệ thống
Đăng xuất
Hình 2.4. Biểu đồ hoạt động thoát ra khỏi hệ thống
8
Đăng kí thành viên
Hình 2.5. Biểu đồ hoạt động đăng kí thành viên
Xem thông tin về sản phẩm
Hình 2.6. Biểu đồ hoạt động xem thông tin về sản phẩm
9
Thêm sản phẩm vào giỏ hàng
Hình 2.7. Biểu đồ chức năng thêm SP vào giỏ hàng
Đặt hàng
Hình 2.8. Biểu đồ chức năng đặt hàng
10
Đổi mật khẩu
Hình 2.9. Biểu đồ chức năng đổi mật khẩu
Xoá Member
Hình 2.10. Biểu đồ chức năng xoá Member
11
Thêm sản phẩm
Hình 2.11. Biểu đồ chức năng thêm sản phẩm
Sửa thông tin sản phẩm
Hình 2.12. Biểu đồ chức năng sửa thông tin sản phẩm
Xoá sản phẩm
Hình 2.13. Biểu đồ chức năng xoá sản phẩm
12
Xoá User
Hình 2.14. Biểu đồ chức năng xoá User
2.7.2. Đặc tả Use-case
Use-case tìm kiếm
Hình 2.15. Use case tìm kiếm
Use-case quản lý sản phẩm
Hình 2.18. Use-case quản lý sản phẩm
13
Chức năng sửa thông tin sản phẩm
Hình 2.21. Biểu đồ tuần tự chức năng sửa thông tin sản phẩm
Chức năng xóa sản phẩm:
Hình 2.22. Biểu đồ tuần tự chức năng xóa sản phẩm
Chức năng đăng nhập:
14
Hình 2.23. Biểu đồ tuần tự chức năng đăng nhập
Chức năng đăng ký thành viên
Hình 2.24. Biểu đồ tuần tự chức năng đăng ký thành viên
15
CHƢƠNG 3. DEMO WEBSITE
3.1. GIAO DIỆN TRANG BACKEND
Hình 3.1. Trang chủ backend
Hình 3.2. Trang sản phẩm
Hình 3.3. Thêm sản phẩm
16
Hình 3.4. Sửa sản phẩm
Hình 3.5. Trang danh mục
Hình 3.6. Sửa danh mục
17
Hình 3.7. Trang bài viết
Hình 3.8. Sửa bài viết
3.2. GIAO DIỆN TRANG FRONTEND
Hình 3.9. Trang chủ Frontend
18
Hình 3.10. Chi tiết sản phẩm
Hình 3.11. Giỏ hàng
Hình 3.12. Đặt hàng thành công
19
KẾT LUẬN
Trải qua một tháng xây dựng website bán hàng với Laravel
Framework thì em đã phần nào hoàn thiện tương đối các chức năng
cơ bản của một website bán hàng. Người dùng có thể dễ dàng xem
các sản phẩm trên trang web theo các tiêu chí lọc theo chuyên mục,
theo thẻ, theo người đăng bài để tiếp cận với các tin tức cách phù hợp
với mình nhất, với công cụ soạn bài viết hỗ trợ tốt được tính hợp từ
CKEditor. Tất cả đều dưới sự quản lý từ quản trị viên, quản trị viên
có thể dễ dàng quản lý thêm, sửa, xóa với danh mục, sản phẩm, đăng
bài, tệp tin… một cách nhanh chóng.
Tuy vậy để hoạt động tốt và tối ưu hơn còn một số mặt hạn
chế cần khắc phục như sau:
Các tệp tin Hìnhảnh, video … đính kèm với bài viết đều lưu
trực tiếp trên máy chủ của website, với số lượng nhỏ thì không là vấn
đề nhưng khi quy mô được mở rộng thì sẽ tốn rất nhiều dung lượng
cho máy chủ. Vì thế để khắc phục vấn đề này cần có cơ chế xử lý các
tệp tin được đính kèm cần chuyển sang một nơi lưu trữ khác uy tín,
an toàn, chi phí thấp… VD: google drive, flick pro, youtube…
Cần nhiều thiết đặt tùy chỉnh hơn trong trang quản trị đối với
người đăng bài và quản trị viên. Vd: Các thiết đặt tùy chỉnh số bài
được hiện trong một trang đối với những nơi dùng phân trang.
Thêm chức năng nhận thông báo qua mail khi người dùng đặt
mua sản phẩm. Để làm được chức năng này cần lưu các thông tin
liên lạc người dùng sau đó cấu Hìnhmột email để gửi.
20