M Ở ĐẦU Ngày nay, với sự phát triển của công nghệ, đặc biệt là công nghệ thông tin đã tạo ra rất nhiều những cơ hội được tiếp cận với những dịch vụ tiện ích cho con người, cùng với đó là
Trang 1TRƯỜ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 ĐỒ ĂN
CHO CỬA HÀNG XUKA
TÓM TẮT ĐỒ ÁN TỐT NGHIỆP NGÀNH: CÔNG NGHỆ THÔNG TIN
NIÊN KHÓA: 2016 - 2019
HSSV : Nguyễn Thị Hoa
Mã HSSV : CCCT16B006 CBHD : TS Hồ Văn Phi
Đà Nẵng, 06/2019
Trang 2M Ở ĐẦU
Ngày nay, với sự phát triển của công nghệ, đặc biệt là công nghệ thông tin đã tạo ra rất nhiều những cơ hội được tiếp cận với
những dịch vụ tiện ích cho con người, cùng với đó là một nền tảng công nghiệp tri thức, thương mại điện tử
Thay vào đó, thương mại điện tử có thể hỗ trợ những người
hiện đại một cách tối đa Họ có thểdùng điện thoại di động hay là máy tính có kết nối mạng để mạng mua sản phẩmở bất cứ đâu, bất cứ lúc nào Thương mại điện tử đã cung cấp cho người sử dụng dịch vụ xuyên biên giới và thời gian, đã giúp cho khách hàng của mình tiết
kiệm được thời gian và chi phí đi lại
Trong thời kì khủng hoảng kinh tế hiện nay thì website càng
trở nên quan trọng hơn Sau khi nghiên cứu tình hình phát triển của
cửa hàng XuKa, tôi thấy việc cửa hàng cần có một website bán hàng
là sự cần thiết Điều này không chỉ làm cho doanh thu cửa hàng có
thể tăng lên mà còn là cơ hội quảng bá hình ảnh của cửa hàng rộng rãi hơn, tạo ấn tượng tốt của cửa hàng với khách hàng Qua thời gian
khảo sát và làm việc tại cửa hàng XuKa tôi quyết định chọn đề tài “ Xây dựng website bán đồ ăn cho cửa hàng XuKa” Với mong muốn
cửa hàng bán đồ ăn Xuka ngày càng được nhiều người biết đến hơn, doanh thu của cửa hàng tăng lên
1 Lý do chọn đề tài
Ngày nay, với sự phát triển của công nghệ, đặc biệt là công nghệ thông tin đã tạo ra rất nhiều những cơ hội được tiếp cận với
những dịch vụ tiện ích cho con người, cùng với đó là một nền tảng công nghiệp tri thức, thương mại điện tử
Thay vào đó, thương mại điện tử có thể hỗ trợ những người
Trang 3máy tính có kết nối mạng để mạng mua sản phẩmở bất cứ đâu, bất cứ lúc nào Thương mại điện tử đã cung cấp cho người sử dụng dịch vụ xuyên biên giới và thời gian, đã giúp cho khách hàng của mình tiết
kiệm được thời gian và chi phí đi lại
Trong thời kì khủng hoảng kinh tế hiện nay thì website càng
trở nên quan trọng hơn Sau khi nghiên cứu tình hình phát triển của
cửa hàng XuKa, tôi thấy việc cửa hàng cần có một website bán hàng
là sự cần thiết Điều này không chỉ làm cho doanh thu cửa hàng có
thể tăng lên mà còn là cơ hội quảng bá hình ảnh của cửa hàng rộng rãi hơn, tạo ấn tượng tốt của cửa hàng với khách hàng Qua thời gian
khảo sát và làm việc tại cửa hàng XuKa tôi quyết định chọn đề tài “ Xây dựng website bán đồ ăn cho cửa hàng XuKa” Với mong muốn
cửa hàng bán đồ ăn Xuka ngày càng được nhiều người biết đến hơn, doanh thu của cửa hàng tăng lên
2 Mục tiêu và nhiệm vụ nghiên cứu
Xây dựng trang web bán hàng cho cửa hàng, thực hiện các
chức năng bán hàng
Giao diện đẹp và dễ sử dụng
3 Đối tượng và phạm vi nghiên cứu
Nghiên cứu công cụ hỗ trợ laravel
Khảo sát về quy trình bán đồ ăn của cửa hàng
4 Phương pháp nghiên cứu
Tìm hiểu các tài liệu liên quan
Khảo sát thực trạng quy trình bán, sản phẩm của cửa hàng
5 Dự kiến kết quả
Hoàn thành được một trang web bán đồ ăn cho cửa hàng với giao diện trực quan dễ sử dụng
6 Nội dung đồ án
Trang 4Ngoà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 Chương trình Demo
Trang 5CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 1.1 TỔNG QUAN VỀ LẬP TRÌNH LARAVEL
Laravel là một Open source PHP Framework miễn phí được phát triển bởi Taylor Otwell ra mắt lần đầu vào tháng 6 năm 2011
Với những ưu điểm tận dụng được các kỹ thuật Design Pattern, các công nghệ mới nhất của PHP và rất dễ dàng tiếp cận và
sử dụng nó vì vậy Laravel hiện tại đang là PHP Framework được sử
dụng phổ biến nhất trên thế giới
Nhưng đúng là không một phần mềm nào chỉ có ưu điểm và Laravel cũng vậy nó cũng có một số điểm yếu như sau: là không hỗ
trợ các phiên bản PHP cũ vì thế các website có nền tảng PHP version
thấp hơn khá là khó khi có ý định chuyển sang Laravel và phải luôn
cập nhật các thông tin mới nhất về PHP để áp dụng vào Laravel Phiên bản của Laravel hiện tại chỉ hỗ trợ phiên bản 5.5.9 trở lên
1.2 CÀI ĐẶT LARAVEL
Laravel sử dụng Composer để quản lý những thành phần phụ
của nó Vì vậy, trước khi sử dụng Laravel hãy chắc chắn Composer
đã được cài đặt trên máy tcủa bạn
- Tạo mới project Laravel với trình cài đặt của Laravel
(Laravel Installer)
Trước tiên, tải Laravel Installer bằng Composer
Câu lệnh: composer global require "laravel/installer"
Hãy đảm bảo thư mục bin bên trong thư mục vendor của hệ
thống Composer đã được đặt trong biến môi trường $PATH để cho laravel có thể thực thi được bởi chỉ định của hệ thống của bạn Thư
mục này tồn tại ở các vị trí khác nhau dựa trên hệ điều hành của
bạn; tuy nhiên, một số vị trí phổ biến bao gồm:
+ Hệ điều hành Mac: $HOME/.composer/vendor/bin
Trang 6+ Các bản phân phối GNU / Linux: $HOME/.composer/vendor/bin
Sau khi cài đặt, lệnh “laravel new” sẽ tạo ra 1 bản Laravel mới được cài đặt trong thư mục bạn chỉ định VD: laravel new blog sẽ tạo
ra thư mục có tên là blog và chứa bản cài đặt Laravel với tất cả các thành phần phụ đã được đưa vào Câu lệnh sử dụng: laravel new blog
Ho ặc tạo project với Composer Create-Project
Cách khác để cài đặt Laravel bằng cách dùng lệnh create-project của Composer trong cửa sổ lệnh
composer create-project prefer-dist laravel/laravel blog
Tạo Server cục bộ để phát triển
Nếu đã có cài đặt PHP ở máy cục bộ và bạn muốn dùng Server tích hợp sẵn của PHP đó phục vụ cho ứng dụng, bạn có thể dùng
lệnh của Artisan là serve Câu lệnh sẽ khởi động server hoạt động ở địa chỉ: http://localhost:8000
Câu lệch thực hiện: php artisan serve
Tất nhiên, có nhiều lựa chọn phát triển cục bộ mạnh mẽ hơn thông qua Homestead và Valet
C ấu hình cho ứng dụng
Thư mục Public
Sau khi cài đặt Laravel, bạn có thể chỉnh cấu hình các tài liệu công khai của web server hoặc thư mục gốc của website có thể đặt trong thư mục public File index.php trong thư mục này là file chạy chính của ứng dụng và nhận tất cả các HTTP Request được đổ vào ứng dụng của bạn
Các file Cấu hình
Trang 7Tất cả các file cấu hình của Laravel Framework được đặt trong thư mục config Mỗi option đều đã được ghi tài liệu ở đó, vậy nên hãy xem qua các file và làm quen với các option có sẵn cho bạn Application Key
Việc tiếp theo bạn cần làm sau khi cài đặt Laravel là thiết lập Application key thành một chuỗi ngẫu nhiên Nếu bạn cài đặt Larvel thông qua Composer hoặc Laravel Installer, key này đã được thiết
lập cho bạn bằng câu lệnh: php artisan key:generate Thông thường, chuỗi này phải là 32 ký tự Key có thể thiết lập trong file cấu hình môi trường env
Nếu bạn không thay đổi tên env.example thành env, bạn cần làm luôn Chú ý: Nếu application key không được thiết lập, các sessions của user và các dữ liệu mã hóa khác sẽ không an toàn
Cấu hình bổ sung
Bạn có thể tự do phát triển Tuy nhiên, bạn có thể xem file cấu hình config/app.php và tài liệu của nó Nó chứa cá tùy chọn như timezone và locale có thể thay đổi theo ứng dụng của bạn
Bạn cũng có thể muốn cấu hình một vài thành phần bổ sung
của Laravel, chẳng hạn như:
- Cache
- Database
- Session
1.3 TỔNG QUAN VỀ XAMPP
Để chạy được PhP chúng ta phải thiết lập môi trường wen Server Tuy nhiên, không phải lúc nào chúng ta cũng đủ kinh phí để mua một con Server về phục vụ cho việc học Điều này vô cùng tốn kém và không cần thiết Vậy làm thế nào để ta có thể chạy được
Trang 8PHP Chúng ta cùng tìm hiểu về một công cụ mà nó giúp chúng ta
giải quyết được vấn đề trên Đó chính là XAMPP
XAMPP là gì?
Xampp là một công cụ tích hợp đầy đủ các thành bao gồm Apachee, Mysql, PHP,Perl Giúp chúng ta tạo ra môi trường web sever trên máy tính của mình ,để có thể chạy được kịch bản PHP
1 Apache Là một chương trình máy chủ, dùng để giao tiếp
với các giao thức HTTP Apache chạy tốt trên mọi hệ điều hành
2 Mysqql Là hệ quản trị cơ sở dữ liệu, được dùng để lưu trữ thông tin của một website Mỗi website có thể sử dụng một hoặc nhiều cơ sở dữ liệu
3 PHP Là ngôn ngữ kịch bản trên phía Server, dùng để xử lý các thao tác của người dùng Và làm việc trực tiếp với cơ sở dữ liệu (Database)
4 Perl Là một tầng cao hơn, một ngôn ngữ lập trình năng động hơn Sử dụng rộng rãi trong lập trình mạng và quản trị hệ
thống Ít phổ biến cho mục đích phát triển web, Perl thích hợp với rất nhiều ứng dụng
1.4 NGÔN NGỮ LẬP TRÌNH PHP
Là một PHP Framework mã nguồn mở và miễn phí, được phát triển bởi Taylor Otwell và nhắm mục tiêu hỗ trợ phát triển các ứng
dụng web theo cấu trúc model- view- controller (MVC) Những tính năng nổi bật của Laravel bao gồm cú pháp dễ hiểu- rõ ràng, một hệ
thống đóng gói Modular và quản lý gói phụ thuộc, nhiều cách khác nhau để truy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ việc triển khai vào bảo trì ứng dụng
ững đặc trưng cơ bản của php
Trang 9PHP là từ được viết tắt từ Hypertext Preprocessor, đây là một ngôn ngữ của lập trình có thể thực hiện kích bản hoặc là đưa ra một
loại mã lệnh mà được dùng chủ yếu trong việc phát triển những ứng
dụng có liên quan đến việc viết cho máy chủ; mã nguồn mở hay là
mục đích tổng quát
PHP rất thích hợp với việc viết cho web, bên cạnh đó khi sử
dụng chúng cũng có thể nhúng được vào trang HTML một cách dễ dàng Hiện nay, PHP đang là một ngôn ngữ lập trình cho web được
sử dụng và biết đến vô cùng phổ biến trên thế giới Lý do là bởi việc
tối ưu hóa các ứng dụng của web, việc có tốc độ nhanh và nhỏ gọn Bên cạnh đó, các cú pháp của PHP cũng giống với là C và Java nên các lập trình viên có thể học và xây dựng được một sản phẩm là tương đối nhanh so với các ngôn ngữ khác
Việc xây dựng ngôn ngữ, tài liệu gốc và các thư viện trong PHP có tính cộng đồng thì đóng góp của Zend Inc là rất lớn Nhằm
tạo ra được một môi trường làm việc chuyên nghiệp, có thể đưa được PHP vào quy mô phát triển của doanh nghiệp thì các công ty do nhà phát triển PHP tính cốt lõi đã vô cùng quan tâm, cũng như đầu tư nguồn nhân lực cho công việc này
Ưu điểm
Ưu điểm của PHP có rất nhiều, trong đó chúng tôi sẽ kể ra cho
bạn đọc 5 nội dung chính bao gồm:
Ưu điểm đầu tiên mà chúng tôi muốn nhắc tới đó chính là việc PHP được sử dụng miễn phí, vì thế nó là yếu tố vô cùng tuyệt vời cho những ai muốn học về ngôn ngữ lập trình này Các bạn có thể tự
học được PHP theo dạng online, mà không cần phải lo đến việc sẽ bỏ
ra một khoản tiền lớn để chi trả cho học
Trang 10Thứ hai, cấu trúc của PHP cực đơn giản, thế nên đối với các
bạn lập trình viên khi tìm hiểu và theo họ nó sẽ không bị mất quá nhiều thời gian mới có thể học được Đây chính là một ưu điểm, khiến cho PHP luôn đón nhận được sự quan tâm hàng đầu từ những người yêu thích về công nghệ thông tin
Thứ ba, thư viện mà PHP tạo ra thì có sự phong phú, cũng như được cộng đồng hỗ trợ một cách mạnh mẽ Vậy nên, nếu như các bạn
có nhu cầu tìm nguồn tài liệu thì có thể dễ dàng, cũng như gặp khó khăn thì được hỗ trợ một cách đắc lực nhất
Thứ tư, khi học về PHP thì các bạn sẽ có được cơ hội về
việc làm là rất lớn, mức lương của nó cũng khá cao nếu như chúng tôi không muốn nói là khủng, chắc chắn là các bạn chưa khi nào nghĩ
tới Bên cạnh đó, ưu điểm này còn giúp cho bạn có thể làm được lượng công việc lớn khác nhau, cũng như tại nhiều công ty và thu
nhập từ đó sẽ được tăng lên đáng kể
Thứ năm, PHP không chỉ dừng lại ở những tính năng hiện
tại, trong tương lai thì nó còn phát triển mạnh mẽ hơn nữa để khẳng định được vị trí của mình luôn là cao ở trong bảng danh sách thực
hiện điều tra, khảo sát mỗi năm về ngôn ngữ lập trình trong công nghệ thông tin
Nhược điểm
Với những ưu điểm tiện dụng, người học lập trình có thể dễ
học thì PHP cũng có những nhược điểm cơ bản Trong đó, nó được
thể hiện qua:
Thứ nhất, PHP có hạn chế về cấu trúc của ngữ pháp, bởi nó không được thiết kế gọn gàng và có phần đẹp mắt như những ngôn
ngữ trong lập trình khác
Trang 11 Thứ hai, PHP chỉ có thể hoạt động và sử dụng được trên các ứng dụng trong web Đó chính là lý do khiến cho ngôn ngữ này khó
có thể cạnh tranh được với những ngôn ngữ lập trình khác, nếu như
muốn phát triển và nhân rộng hơn nữa trong lập trình
1.5 MYSQL LÀ GÌ?
MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến
nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định
và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet Người dùng có thể tải về MySQL miễn phí từ trang chủ MySQL có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS
Trang 12CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2.1 GIỚI THIỆU VỀ CỬA HÀNG XUKA
2.2 MỤC TIÊU VÀ YÊU CẦU XÂY DỰNG HỆ THỐNG 2.3 MÔ HÌNH HÓA YÊU CẦU
2.3.1 Xác định các tác nhân
2.3.2 Xác định các trường hợp sử dụng
2.3.3 Đặc tả các trường hợp sử dụng
2.4 BIỂU ĐỒ TRƯỜNG HỢP SỬ DỤNG
Hình 2.1 Biểu đồ trường hợp sử dụng
Hình 2.3 Biểu đồ cập nhật danh mục
2.5 BIỂU ĐỒ HOẠT ĐỘNG
Hình 2.4 Biểu đồ hoạt động đăng nhập
Hình 2.5 Biểu đồ hoạt động tìm kiếm\
Hình 2.6 Biểu đồ hoạt động xem chi tiết sản phẩm Hình 2.7 Biểu đồ hoạt động cập nhật sản phẩm
Hình 2.8 Biểu đồ cập nhật đơn hàng
2.6 BIỂU ĐỒ TUẦN TỰ
Hình 2.9 Biểu đồ tuần tự đăng nhập
Hình 2.10 Biểu đồ tuần tự tìm kiếm
Hình 2.11 Biểu đồ tuần tự cập nhật khuyến mãi Hình 2.12 Biểu đồ tuần tự đặt hàng
2.7 BIỂU ĐỒ LỚP CHI TIẾT
Hình 2.13 Biểu đồ lớp chi tiết
2.8 BIỂU ĐỒ TRẠNG THÁI
Hình 2.14 Biểu đồ trạng thái đăng nhập
Hình 2.15 Biểu đồ trạng thái tìm kiếm
Hình 2.16 Biểu đồ trạng thái tiến hành đặt hàng
Trang 1312
CHƯƠNG 3 DEMO CHƯƠNG TRÌNH
3.1 GIAO DIỆN TRANG CHỦ
Hình 3.1 Giao di ện trang chủ
3.2 GIAO DIỆN DANH MỤC SẢN PHẨM
Hình 3.2 Giao diện danh mục sản phẩm
3.3 GIAO DIỆN TRANG THỰC ĐƠN
Hình 3.3 Giao diện trang thực đơn
Trang 143.4 GIAO DIỆN CHI TIẾT SẢN PHẨM
Hình 3.4 Giao di ện chi tiết sản phẩm
3.5 GIAO DIỆN TRANG GIỎ HÀNG
Khách hàng có thể thêm, sửa, xóa sản phẩm khi mua sản
phẩm
Hình 3.5 Giao di ện trang giỏ hàng
3.6 GIAO DIỆN TRANG ĐĂNG KÝ
Hình 3.6 Giao diện trang đăng ký
Trang 1514
3.7 GIAO DIỆN TRANG ĐĂNG NHẬP
Hình 3.7 Giao diện trang đăng nhập
3.8 GIAO DIỆN TRANG CHỦ ADMIN
Hình 3.8 Giao diện trang chủ admin
3.9 GIAO DIỆN QUẢN LÝ SẢN PHẨM
Admin có quyền thêm, sửa, xóa, sản phẩm
Hình 3.9 Giao diện quản lý sản phẩm