+ Cho phép người quản trị có thể đưa ra các báo cáo thống kê về sản phẩm sản phẩm được đặt hàng nhi u nhề ất, được nhiều người ưa chuộng nh t và th ng kê ấ ốdoanh thu mà cửa hàng đạt đượ
Trang 1Bình Dương 12/2020
Trang 2
NHẬN XÉT VÀ CHẤM ĐIỂM C A GI NG VIÊN Ủ Ả
Họ và tên gi ng viên: Nguyả ễn Hữu Vĩnh
Đề tài: Xây dựng website bán giày thể thao online cho Shop Shoes Bình Chuẩn
Nội dung nh n xét ậ
Điểm:
Bằng s ố:
Bằng ch ữ:
Bình Dương, ngày tháng năm 2020
GIẢ NG VIÊN
Nguy n Hễ ữu Vĩnh
Trang 3
LỜI NÓI ĐẦU
Ngày nay, với s phát triự ển m nh mạ ẽ của khoa học kỹ thuật và nh ng ng d ng ữ ứ ụcủa nó trong cu c sộ ống, đặc bi t là trong vi c hệ ệ ỗ trợ qu n lý Thì vi c tin h c hóa công ả ệ ọtác qu n lý là nhu c u c n thiả ầ ầ ết, đem lại hi u qu rõ r t, giúp cho vi c qu n lý c a các ệ ả ệ ệ ả ủ
cơ quan, doanh nghiệp, trở nên dễ dàng, hi u quệ ả, chính xác hơn
Hãy thử nhìn vào chiếc máy tính cá nhân của mình,chỉ với một vài thao tác đơn giản, thậm chí là một cú click chuột, bạn có thể đọc báo, xem phim, nghe đài,
và cả mua sắm qua mạng, có thể nói cả thế giới thông tin gần như hiện ra trướcmắt bạn
Các doanh nghiệp muốn tiến hành bán hàng trực tuyến, thì điều đầu tiên họ cần đến là một website chất lượng, với một hệ thống thông tin được thiết kế tốt, giao diện đẹp, dễ sử dụng và an toàn
Với lí do đó, được sự hướng dẫn và giúp đỡ ủa thầ Nguyễn Hữu Vĩnh, em đã c y chọn đề tài “Xây d ng Website bán giày th thaoự ể ” làm đề tài cho tiểu luận của mình Với một số mục tiêu khi thiết kế trang web:
- Bước đầu xây dựng website bán hàng trực tuyến nhằm quảng bá rộng rãi cácsản phẩm
- Rút ngắn khoảng cách giữa nhà phân phối và người tiêu dùng, đồng thời tiết kiệm thời gian chi phí một cách đáng kể thông qua những thông tin phù hợp nhấtvới nhu cầu của khách hàng
Trong quá trình th c hi n u lu n cu i khóa ự ệ tiể ậ ố này em đã nhận được sự giúp đỡchỉ bảo tận tình của các thầy, cô giáo, đã tận tình chỉ bảo trong su t quá trình h c tố ọ ại trường, c bi t em xin chân thành cđặ ệ ảm ơn Thầy Nguy n Hễ ữu Vĩnh đã hưỡng dẫn trong quá trình làm ti u luể ận
Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng chắc rằng khó tránh khỏi những thiếu sót Em rất mong nhận được sự thông cảm, những lời góp ý và chỉ bảo tận tình của quý Thầy Cô và các bạn
Trang 4
MỤC LỤC
LỜI NÓI ĐẦU 3
CHƯƠNG I: MỞ ĐẦU 10
1.1 Lý do ch ọn đề tài 10
1.2 Ưu, khuy ết điể 10 m * Ưu điể m 10 * Khuy ết điể 10 m 1.3 Hướng tiếp c n cậ ủa đề tài 11
1.4 N i dung th c hi n cộ ự ệ ủa đề tài 11
1.5 Ý nghĩa lý luận và ý nghĩa thực tiễn c ủa đề tài 13
CHƯƠNG 2: TỔNG QUAN VỀ LARAVEL FRAMEWORK 14
2.1 Giớ i thi u v Laravel ệ ề 14
2.2 L ch s phát tri n c a Laravel ị ử ể ủ 14
2.3 T i sao ch n Laravel ạ ọ 16
2.4 Gi i thi u MySQLớ ệ 16
2.5 T i sao ch n MySQL? ạ ọ 17
CHƯƠNG 3: KHẢO SÁT HỆ THỐNG, XÁC ĐỊNH YÊU CẦU 18
3.1 Lý do ch ọn đề tài 18
- Thời gian: 8h, Ngày 10 tháng 10 năm 2020 18
3.2 Chiến lược điều tra 18
3.3 Phân tích h ệ thống 19
3.3.1 Về phía khách hàng 19
3.3.2 Về phía nhà quản lý 19
3.4 Các chức năng chính của h ệ thống 20
Trang 5
3.4.1 Các chức năng của đối tượng khách vãng lai 20
3.4.1.1 Chức năng điề n thông tin khi mua s n ph m ả ẩ 20
3.4.1.2 Chức năng xem thông tin sả n ph m ẩ 21
3.4.1.3 Chức năng giỏ hàng 21
3.4.1.4 Chức năng đặ t hàng 21
3.4.2 Chức năng của Administrator 21
3.4.2.1 Các chức năng quản lý khách hàng 21
3.4.2.2 Các chức năng quản lý S n Ph m ả ẩ 22
3.4.2.3 Các chức năng quản tr ị ngườ i dùng 22
3.4.2.4 Các Chức Năng Đối V ới Hóa Đơn Đặt Hàng 22
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 23
4.1 Sơ đồ Usecase 23
4.1.1 Biểu đ use case t ng quát ổ 23
4.1.2 Biểu đ use case chi ti t ế 24
4.2 Sơ đồ tun t ự 33
4.2.1 Sơ đ tu đăng nh 33 n t p 4.2.2 S ơ đ tu n t xem s n ph m ả ẩ 33
4.2.3 Sơ đ tun t thêm loại sản phẩm 34
4.2.4 Sơ đ tun t thêm hiệu sản phẩm 34
4.2.5 Sơ đ tun t thêm sản phẩm 35
4.2.6 Sơ đ tun t sửa loại sản phẩm 35
4.2.7 Sơ đ tu ử n t s a hi u s n phệ ả ẩm 36
4.2.8 Sơ đ tun t sửa sản phẩm 36
4.2.9 Sơ đ tun t xóa sản phẩm 37
4.2.10 Sơ đ tun t xóa loại sản phẩm 37
Trang 6
4.2.11 Sơ đ tun t xóa hiệu sản phẩm 38
4.2.12 Sơ đ tun t xóa sản phẩm 38
4.2.13 Sơ đ tun t liệt kê sản phẩm 39
4.3 Mô hình hóa d ữ liệ u t ổ chức d ữ liệ u và thi t kế ế chương trình cho Web 39
4.3.1 Sơ đ cơ sở dữ liệu 39
4.3.2 Mô t b ả ảng cơ sở ữ liệ 40 d u CHƯƠNG 5: THIẾT KẾ GIAO DI N, KI M TH Ệ Ể Ử 43
5.1 Thi t kế ế và đặ ả c t giao di n ệ 43
5.1.1 N i dung trang ch ộ ủ 43
5.1.2 Trang hàng gi m giá ả 44
5.1.3 Trang s n ph m m i ả ẩ ớ 45
5.1.4 Trang giày n ữ 46
5.1.5 Trang giày nam 47
5.1.5 Trang Puma 48
5.1.6 Trang Balenc iaga 49
5.1.7 Trang Converse 50
5.2 Ph n n ội dung trang qu n lý ả 56
5.2.1 Đăng nhp hệ thống qu n tr ả ị 56
5.3 Ki m th ể ử 61
CHƯƠNG 6 : KẾT LUẬN VÀ HƯỚNG PHÁT TRI N Ể 63
6.1 Th c nghi m ự ệ 63
6.2 K t quế ả đạt đượ ủa đề c c tài 63
6.3 H n ch cạ ế ủa đề tài 63
6.4 Hướng phát tri n cể ủa đề tài 63
TÀI LI U THAM KH O Ệ Ả 64
Trang 7
DANH M C HÌNH Ụ ẢNH
Hình 4 1: Biểu đồ use case tổng quát 23
Hình 4 2: Sơ đồ use case đăng nhậ 24 p Hình 4 3: Sơ đồ use case quản trị viên 25
Hình 4 4: Sơ đồ use case quản lý đơn hàng 26
Hình 4 5: Sơ đồ use case quản lý tài khoản cá nhân 27
Hình 4 6: Sơ đồ use case tìm kiếm 29
Hình 4 7: Sơ đồ use case đăng ký 30
Hình 4 8: Sơ đồ use case đăng nhập 32
Hình 4 9: Sơ đồ tuần tự đăng nhập 33
Hình 4 10: Sơ đồ tuần tự xem sản phẩm 33
Hình 4 11: Sơ đồ tuần tự thêm loại sản phẩm 34
Hình 4 12: Sơ đồ tuần tự thêm hiệu sản phẩm 34
Hình 4 13: Sơ đồ tuần tự thêm sản phẩm 35
Hình 4 14: Sơ đồ tuần tự sửa loại sản phẩm 35
Hình 4 15: Sơ đồ tuần tự sửa hiệu sản phẩm 36
Hình 4 16: Sơ đồ tuần tự sửa sản phẩm 36
Hình 4 17: Sơ đồ tuần tự xóa sản phẩm 37
Hình 4 18: Sơ đồ tuần tự xóa loại sản phẩm 37
Hình 4 19: Sơ đồ tuần tự xóa hiệu sản phẩm 38
Hình 4 20: Sơ đồ tuần tự xóa sản phẩm 38
Hình 4 21: Sơ đồ tuần tự liệt kê sản phẩm 39
Hình 4 22: Mô hình hóa dữ liệu 39
Hình 5 1: Trang chủ 43
Hình 5 2: Trang hàng giảm giá 44
Hình 5 3: Chức năng xem sản phẩm mới 45
Hình 5 4: Chức năng xem giày nữ 46
Hình 5 5: Chức năng xem giày nam 47
Hình 5 6: Chức năng xem thương hiệu Puma 48
Hình 5 7: Chức năng xem thương hiệu Balenciaga 49
Trang 8
Hình 5 8: Chức năng xem thương hiệu Converse 50
Hình 5 9: Chức năng xem thương hiệu Nike 51
Hình 5 10: Chức năng xem thương hiệu Adidas 52
Hình 5 11: Chức năng xem thương hiệu Adidas 53
Hình 5 12: Chức năng xem giỏ hàng 54
Hình 5 13: Chức năng Thanh toán 55
Hình 5 14: Chức năng đăng nhập quản trị 56
Hình 5 15: Chức năng quản lý sản phẩm 56
Hình 5 16: Chức năng quản lý thương hiệu sản phẩm 57
Hình 5 17: Chức năng thêm thương hiệu sản phẩm 57
Hình 5 18: Chức năng xem đơn đặt hàng 58
Hình 5 19: Chức năng quản lý loại sản phẩm 58
Hình 5 20: Chức năng Thêm sản phẩm 59
Hình 5 21: Trang chi tiết sản phẩm 59
Hình 5 22 Chức năng quản lý khách hàng 60
Trang 9
DANH M C BỤ ẢNG
Bảng 4 1: UC đăng nhập 24
Bảng 4 2: UC Quản lý quản trị viên (Admin) 25
Bảng 4 3: UC Quản lý đơn hàng 27
Bảng 4 4: UC Quản lý tài khoản cá nhân 29
Bảng 4 5: UC Tìm kiếm 30
Bảng 4 6: UC Đăng ký 31
Bảng 4 7 UC đăng nhập 33
Bảng 4.3.2 1 Bảng chứ thông tin giỏ hàng 40
Bảng 4.3.2 2 Bảng chứ thông tin chi tiết giỏ hàng 40
Bảng 4.3.2 3 Bảng chứ thông tin khách hàng 41
Bảng 4.3.2 4 Bảng chứ thông tin sản phẩm 42
Bảng 4.3.2 5 Bảng chứ thông tin loại sản phẩm 42
Bảng 5 1 Đối với người dùng 61
Bảng 5 2 Đối với quản trị 62
Trang 10
CHƯƠNG I: MỞ ĐẦU 1.1 Lý do chọn đề tài
Sau khi tìm hi u và xin ý ki n cể ế ủa giáo viên hướng dẫn, em đã lựa chọn ứng
dụng “ XÂY D NG WEBSITE BÁN GIÀY TH THAO CHO SHOP SHOES Ự Ể
BÌNH CHUẨN ”
1.2 Ưu, khuyết điểm
* Ưu điểm
- Đề tài mang tính gần gũi với sinh viên
- Công tác qu n lý không quá ph c t p ả ứ ạ
- Đố ới v i khách truy c p trang web: ậ
+ Cho phép xem thông tin v các s n phề ả ẩm, các thông tin liên quan đến cửa hàng, góp ý, liên h t i trang web ệ ớ
+ Cho phép tìm ki m s n ph m theo nhi u tiêu chí khác nhau, s p x p s n ph m, ế ả ẩ ề ắ ế ả ẩđánh giá, phân loại sản phẩm
+ Cho phép mua hàng khi mặt hàng đó còn trong kho hàng Mọ ải s n ph m khách ẩhàng đặt mua sẽ được cho vào gi hàng c a h ỏ ủ ọ
+ Cho phép lo i bạ ỏ đi các mặt hàng sau khi mình cho vào trong gi hàng cỏ ủa mình mà chưa đặt hàng
- Đố ới người v i qu n tr trang web (admin): ả ị
+ Cho phép admin c p nhậ ật thông tin liên quan đến s n ph m, cả ẩ ụ thể là: Thêm mới thông tin v các lo i s n ph m khi có s n ph m m i và c p nh t thông tin v sề ạ ả ẩ ả ẩ ớ ậ ậ ề ản phẩm vào trong cơ sở dữ liệu; sửa đổi các thông tin sao cho phù h p v i s n ph m và ợ ớ ả ẩxóa bỏ đi các loại điện tho i khi s n phạ ả ẩm đó đã hết ho c c a hàng không còn kinh ặ ửdoanh s n phả ẩm đó nữa
+ Cho phép nh n và qu n lý các bình luậ ả ận đánh giá của khách hàng đối với từng loại s n ph m, quả ẩ ản lý các đơn đặt hàng
+ Cho phép người quản trị có thể đưa ra các báo cáo thống kê về sản phẩm (sản phẩm được đặt hàng nhi u nhề ất, được nhiều người ưa chuộng nh t) và th ng kê ấ ốdoanh thu mà cửa hàng đạt được theo tháng, theo năm
* Khuyết điểm
- Tiếp c n v i ngôn ngậ ớ ữ PHP còn chưa sâu sắc nên dành khá nhi u thề ời gian để tìm hi u, các công ngh liên quan ể ệ
- Chưa có kinh nghiệm lập trình website
- Chưa tiếp c n và ng dậ ứ ụng được h t t t c các control trong ế ấ ả PHP cũng như các công ngh mệ ới như Ajax, Jquery,
Trang 11
- Môi trường ứng dụng còn hạn chế do không có đủ kinh phí để có thể chạy ng ứdụng trên hệ thống thực
1.3 Hướng tiếp cận của đề tài
- Tìm hi u lý thuy t l p trình Web qua môn h c Công ngh Web và ng d ng, vể ế ậ ọ ệ ứ ụ à các tài liệu liên quan đến ngôn ngữ PHP
- Tìm hi u các công ngh mể ệ ới để ử ụ s d ng vào vi c phát tri n ng d ng website ệ ể ứ ụ
- Tham kh o, kh o sát các ng dả ả ứ ụng đã được tri n khai thể ực t thông qua ếInternet: Các trang thương mại điện tử như 4menshop.com, quanaoredep.com, 123mua.com, amazon.com,…
- Tiếp cận dướ ự hưới s ng d n c a giáo viên và sẫ ủ ự trao đổi ki n th c gi a các ế ứ ữthành viên trong l p v i nhau ớ ớ
1.4 Nội dung thực hiện của đề tài
hiện
Tình trạng
Ghi chú
hỗ trợ xây dựng dự
án
2 Tìm hiểu yêu cầu thực tế của hệ thống, khảo sát quy trình của hệ thống
dự định thực hiện đồng thời khảo sát những hệ thống có liên quan nếu cần thiết
10/10/2020 20/10/2020 Cá
nhân
Đã hoàn thiện
hệ thống ở giai đoạn 1, sẽ phân tích rõ ràng mục
21/10/2020 25/10/2020 Cá
nhân
Đã hoàn thiện
Trang 12
tự
Em cũng phân tích những chức năng mới, những ưu điểm sẽ đạt được trong lần xây dựng website mới
Em vạch ra mô hình cấu trúc của website, nhằm giúp
dễ dàng hình dung những chức năng chính cũng như giao diện cơ bản của website
27/10/2020 03/11/2020 Cá
nhân
Đã hoàn thiện
03/11/2020 05/11/2020 Cá
nhân
Đã hoàn thiện
Trang 13
2 Dựa vào những chức năng chính của hệ thống, bước vào quá trình thiết
kế giao diện cho hệ thống
Xây dựng nội dung thông tin cho website, cập nhật thông tin về hình ảnh và nội dung sản phẩm, dịch vụ
05/11/2020 29/11/2020 Cá
nhân
Đã hoàn thiện
hệ thống, đảm bảo việc loại bỏ các lỗi trong website
29/11/2020 1/12/2020 Cá
nhân
Đã hoàn thiện
1.5 Ý nghĩa lý luận và ý nghĩa thực tiễn của đề tài
- Đề tài đóng vai trò quan trọng trong vi c nâng cao ki n th c và d n ti p c n tệ ế ứ ầ ế ậ ới việc xây d ng mự ột ứng d ng th c t cao, giúp cho sinh viên có thêm nh ng ki n thụ ự ế ữ ế ức
và kinh nghi m trong h c t p ệ ọ ậ
- Nâng cao khả năng làm việc độ ậc l p, c ng c và nâng cao ki n thủ ố ế ức
- Giúp sinh viên có thói quen t h c, t tìm hi u và ti p c n các ki n th c mự ọ ự ể ế ậ ế ứ ới một cách có hi u qu ệ ả
Trang 14
CHƯƠNG 2: TỔNG QUAN VỀ LARAVEL FRAMEWORK
2.1 Giới thiệu về Laravel
Laravel 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 vào m c tiêu hắ ụ ỗ trợ phát tri n các ng d ng web theo kiể ứ ụ ếm 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 ể ả ứ ụ
Laravel là m t b mã ngu n PHP Framework hoàn toàn miộ ộ ồ ễn phí, được thi t k ế ế
và xây d ng theo chuự ẩn mô hình MVC Laravel được phát hành theo gi y phép MIT, ấvới mã ngu n cồ ủa nó được lưu trữ trên GitHub Đây là một Framework khá m i m và ớ ẻ
dễ tiếp cận, đượ ấc r t nhi u lề ập trình viên ưa thích và sử ụ d ng Trước h t, s tinh t cế ự ế ủa Laravel nằm ở chỗ ắ ịp được xu hướ b t k ng công nghệ mà điểm nhấn ở đây là các tính năng mới trong các phiên bản PHP 5.3 trở lên Điều đó được thể hiện qua khái niệm namespace, composer, closure và r t nhi u nh ng tiêu chu n trong Design Pattern ấ ề ữ ẩđược áp d ng trên n n tụ ề ảng Framework này Đồng thời, với cách hướng dẫn đơn giản
và dễ tiếp cận đã khiến người dùng thích ngay t lừ ần đầu làm vi c v i Framework này ệ ớ
2.2 Lịch sử phát triển của Laravel
Taylor Otwell, một nhà phát triển Net ở Arkansas đã sử dụng CodeIgniter khi những
“hạt giống” đầu tiên của Laravel được “trồng” Anh chia sẻ “Tôi không thể thêm tất cả các tính năng tôi muốn mà không làm mất internal code của framework”, anh ấy muốn cái gì đó gọn gàng, đơn giản hơn và linh hoạt hơn
Với mong muốn cùng nền tảng vững chắc, Taylor đã tạo ra framework đầu tiên mà sau này trở thành Laravel
PHP thuộc dynamic type, có nhiều lỗi sai nhưng không hiện cảnh báo Ví dụ, với các ngôn ngữ khác, code được viết nếu có sai lỗi thì khi thực hiện nó có thể bị bắt trước khi thực hiện code Bằng cách cố gắng chạy code hoặc bằng cách biên dịch, trình biên dịch sẽ ngăn bạn lại, xác định vấn đề trong code và yêu cầu bạn phải sửa nó trước khi chạy
Ngoài điều đó ra, PHP không có gì đặc biệt Về lý thuyết bạn có thể tiếp tục viết code xấu mà không biết nó có hoạt động hay không Khi có lỗi điều gì đó, bạn phải mất rất nhiều thời gian để tìm ra vấn đề
Trang 15
Taylor đã giải quyết tất cả những vấn đề trên với Laravel Dựa trên các ý tưởng về cơ
sở hạ tầng mạng Net mà Microsoft đã chi ra hàng trăm triệu đô la nghiên cứu và xây dựng
Với Laravel, Taylor đã cố gắng để tạo ra một framework mà sẽ được biết đến với sự đơn giản của nó Ông thêm vào đó một cú pháp thân thiện, cấu trúc rõ ràng, và tài liệu hướng dẫn chi tiết Và từ đó, Laravel ra đời
Cơ sở hạ tng của Laravel
Ông bắt đầu với một lớp định tuyến đơn giản, một giao diện controller thực sự đơn giản (model, view, controller hoặc MVC) Phiên bản 1 được phát hành vào tháng 6 năm 2011 và chỉ sau đó vài tháng phiên bản 2 đã được phát hành vào tháng 9 năm
2011 Laravel 3 đã xuất hiện chỉ hơn một năm sau đó, vào tháng 2 năm 2012 và đây là thời điểm lượng người dùng và sự nổi tiếng của Laravel bắt đầu phát triển
Vào tháng 5 năm 2013, Laravel 4 đã được phát hành dưới dạng một làm lại hoàn chỉnh của framework và kết hợp với một package manager tên là Composer Composer là trình quản lý package mức ứng dụng giúp PHP cho phép mọi người cộng tác thay vì cạnh tranh
Trước Composer, không có cách nào để lấy hai package riêng biệt và sử dụng các phần khác nhau của những package này lại với nhau để tạo ra một giải pháp duy nhất Đầu tiên bạn phải tải các file xuống, đặt chúng vào một vị trí nhất định, tìm ra cách sử dụng chúng…
Composer đã trở thành điểm sáng khiến tất cả các tác giả của framework bắt đầu nhìn lại và bắt đầu thấy được lợi ích của sự hợp tác thay vì cạnh tranh và Laravel bắt đầu có ảnh hưởng thực sự trong thế giới PHP Hiện nay, Laravel 5.2 đang được sử dụng, Taylor tiếp tục thực hiện cải tiến và đổi mới cho framework
Điều không thể thiếu
Mọi người bắt đầu quan tâm đến Laravel Họ bắt đầu đánh giá cao vì Laravel có cấu trúc, cú pháp đẹp, thân thiện, và các thành phần được đặt tên phù hợp Mục đích của Taylor là xây dựng một framework có thể giúp lập trình viên từ không có kỹ năng đến cao thủ
Jeffrey Way, nhà phát triển PHP và người truyền bá Laravel nổi tiếng, nói ông có cảm giác “nuột” về Laravel Taylor nói, “bản chất đơn giản làm chúng khác biệt”:
“Tôi đặc biệt ấn tượng vì ông hiểu những điều mà hầu hết người bảo trì framework/library không hiểu Laravel là một sản phẩm Điều quan trọng nhất, hạnh
Trang 16
phúc nhất của lập trình viên khi code là nó phải là dễ sử dụng, linh hoạt và việc xây dựng thương hiệu cũng quan trọng như nhau … Laravel đã giúp code trở nên vui nhộn, bất kể mức độ kỹ năng của bạn ”
Taylor và cộng đồng mã nguồn mở đã liên tục cập nhật và cải tiến framework mà vẫn cho sử dụng miễn phí Một trong những tác phẩm của Laravel là “developer happiness from download to deploy.”
Một cộng đồng lớn và đam mê đã phát triển xung quanh framework, và Vehikl là niềm
tự hào của cộng đồng Laravel được sử dụng trong việc xây dựng các ứng dụng cho cả hãng và cho khách hàng Laracon US bắt đầu với khoảng 70 người tham gia vào năm
2013 và đã tăng lên hơn 500 người vào năm 2015 và 2016, điều đó phản ánh sự phát triển của Laravel và cộng đồng Laracon
2.3 Tại sao chọn Laravel
V i 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 ( khối kết c u ) và qu n lý gói phấ ả ụ thuộc, nhi u cách khác ềnhau để truy cập vào các 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, Laravel đã bắt đầu được nhiều lập trình viên Vi t Nam ệhướng tới với nh ng khả năng mà nó đem lại ữ
Cũng như các Framework khác, Laravel cho phép xây dựng bộ thư viện riêng
và cho phép b t cấ ứ đâu trong hệ thống có thể gọi tới với s dử ụng Những đặc điểm quan trọng này là cơ sở để em phát tri n ng dể ứ ụng l a ch n Laravel làm công c ự ọ ụchung để xây dựng hệ thống quản của môn học
2.4 Giới thiệu MySQL
MySQL là h qu n trệ ả ị cơ sở ữ liệ d u mã 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
Trang 17
2.5 Tại sao chọn MySQL?
Cơ sở dữ liệu MySQL đã trở thành cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới vì cơ chế xử lý nhanh và ổn định của nó, sự đáng tin cậy cao và dễ sử dụng
Nó được sử dụng mọi nơi – ngay cả châu Nam Cực - bởi các nhà phát triển Web riêng lẻ cũng như rất nhi u các tề ổ chứ ớc l n nh t trên thấ ế giới để tiết ki m th i gian và ệ ờtiền b c cho nhạ ững Web sites có dung lượng lớn, phần mềm đóng gói – bao gồm c ảnhững nhà đi đầu trong lĩnh vực công nghiệp như Yahoo!, Alcatel-Lucent, Google, Nokia, YouTube và Zappos.com
MySQL không chỉ là cơ sở ữ liệ d u mã ngu n m ph bi n nh t trên thồ ở ổ ế ấ ế giới, nó còn trở thành cơ sở ữ liệu đượ d c ch n cho th h m i c a các ng d ng xây d ng trên ọ ế ệ ớ ủ ứ ụ ựnền Linux, Apache, MySQL, PHP/Perl/Python MySQL chạy trên hơn 20 flatform bao gồm: Linux, Windows, OS/X, HP-UX, AIX, Netware, mang đến cho bạn tính linh hoạt trong vi c sệ ử d ng ụ
Trang 18sẽ giao hàng đến tận nơi cho khách hàng Ngoài những lợi ích mà Internet mang lại cho người tiêu dùng nó còn giúp cho nhà cung cấp phát triển rất nhiều trong việc mở rộng thị trường, giúp thương hiệu của công ty được nhiều người biết đến, từ đó giảm được rất nhiều chi phí quảng cáo cho sản phẩm và rất thuận tiện trong việc quản lý sản phẩm và chăm sóc khách hàng theo đúng phương trâm đặt ra
Để tiếp cận và góp phần đẩy mạnh sự phát triển của thương mại điện tử ở nước ta, tôi
đã tìm hiểu và xây dựng website bán giày thể thao qua mạng
- Địa ch Shop Shoes khu phỉ ố Bình Qưới B, phường Bình Chuẩn, thành ph ốThuận An, Bình Dương
- Thời gian: 8h, Ngày 10 tháng 10 năm 2020
3.2 Chiến lược điều tra
- Các nguồn thông tin điều tra: tham kh o t sách báo, hả ừ ệ thống website như: quanaoredep.com, 123mua.com, amazon.com, ebay.com,…
- Phỏng v n tr c ti p ch c a hàng (chấ ự ế ủ ử ỉ khảo sát v i nh ng ch cớ ữ ủ ửa hàng chưa có website nhưng họ đang có nhu cầu sử dụng website để quảng bá thương hiệu và sản phẩm)
- Tự đặt mình vào vị trí của khách hàng để thấy được rõ những yêu cầu thực tế
mà hệ thống c n th c hi n ầ ự ệ
* Các thông tin khảo sát mà em đã tiếp thu được bao gồm:
Trang 19
- Tìm hi u quy trình thi t kể ế ế website
- Nền tảng cơ bản để phát tri n ng d ng web : ASP.Net, PHP, Laravel ể ứ ụJoomla,…
- Những thao tác, quy trình cơ bản của khách hàng khi truy cập vào nh ng trang ữweb thương mại điện tử
- Đóng vai trò là người sử dụng website, em cũng đã rút ra được những yêu c u ầ
cơ bản cần thiết đối với công vi c thi t k và xây d ng website sao cho phù h p vệ ế ế ự ợ ới yêu cầu người dùng nhất
3.3 Phân tích hệ thống
3.3.1 Về phía khách hàng
- Xem thông tin s n ph m: Khách hàng lả ẩ ần đầu tiên truy c p vào trang ch cậ ủ ủa Website có thể xem thông tin c a nh ng s n ph m mủ ữ ả ẩ ới, sản phẩm bán chạy, ho c s n ặ ảphẩm ưa chuộng
- Xem chi ti t s n ph m: Khách hàng có quy n xem t ng chi ti t c a t ng loế ả ẩ ề ừ ế ủ ừ ại sản phẩm được trình bày trên website, giúp cho khách hàng có thể tiếp c n thông tin ậsản ph m m t cách nhanh nhẩ ộ ất
- Giỏ hàng: Khách hàng có quy n thêm s n ph m ề ả ẩ ưa thích vào giỏ hàng của mình, xóa thông tin gi hàng, hoỏ ặc đặt hàng tr c truy n ự ế
- Thanh toán: Khách hàng có quy n ch n hình th c thanh toán khi s n phề ọ ứ ả ẩm đã
có trong gi hàng ỏ
- Giao di n gệ ần gũi với khách hàng
- D dàng thao tác khi s dễ ử ụng website để xem và mua s n ph m ả ẩ
Xem danh sách s n phả ẩm : cho phép người qu n tr có th xem toàn b danh ả ị ể ộsách s n phả ẩm đã được nhập vào trước đó Danh sách chỉ ể hi n th m t sị ộ ố thông tin cơ bản c a s n phủ ả ẩm như tên sản ph m, ẩ ảnh đại di n, sệ ố lượng nh p vào Hậ ệ thống hỗ trợ chức năng lọc thông tin danh sách sản phẩm theo từng hãng s n xu ả ất
Xem thông tin chi tiết sản phẩm : Cho phép người qu n lý xem toàn bả ộ thông tin chi ti t c a m t s n phế ủ ộ ả ẩm nào đó
Trang 20
Thêm m i s n ph m: Cho phép nh p thêm thông tin c a m t s n phớ ả ẩ ậ ủ ộ ả ẩm nào đó,
như: áo khoác, áo len, hay quần kaki, Các thông tin c n thiầ ết như tên sản ph m, hãng ẩsản xu t, nh hi n th , sấ ả ể ị ố lượng, ngày nh p, giá bán, tr ng thái hi n th , và các thông ậ ạ ể ịtin liên quan khác đến cấu hình của sản phẩm
Thay đổi thông tin sản phẩm: Cho phép người quản lý có thể thay đổi những
thông tin chi ti t c a t ng s n phế ủ ừ ả ẩm đã được nh p vào ậ trước đó như số lượng, giá bán, ảnh đại diện, và các thông tin về thông số sản phẩm kèm theo
Xóa thông tin s n phả ẩm : cho phép đánh dấu và xóa thông tin c a m t hoủ ộ ặc
nhiều s n ph m cùng m t lúc ả ẩ ộ
- Quản lý đơn đặt hàng: Người quản trị có chức năng xem toàn bộ danh sách mà
khách hàng đã đặt hàng, lọc danh sách đơn đặt hàng theo một ngày tháng cụ thể, xem chi ti t c a tế ủ ừng đơn đặt hàng
Xem danh sách đơn đặt hàng: Cho phép xem toàn bộ danh sách đơn đặt hàng
mà khách hàng đã đặt hàng trước đó, hệ thống hỗ trợ ọc danh sách đơn đặ l t hàng theo
ngày đặt hàng cụ thể
Xem chi ti t c a tế ủ ừng đơn hàng: Cho phép có thể xem chi ti t c a tế ủ ừng đơn
hàng mà khách hàng đã đặt như danh sách sản phẩm, địa chỉ khách hàng, th i gian ờ
giao hàng,…
3.4 Các chức năng chính của hệ thống
3.4.1 Các chức năng của đối tượng khách vãng lai
Khi tham gia vào hệ thống thì h có thọ ể xem thông tin, điền thông tin khách
hàng, thông tin liên h c a hệ ủ ệ thống, ch n s n ph m vào gi hàng, xem giọ ả ẩ ỏ ỏ hàng, đặt
hàng
3.4.1.1 Chức năng điền thông tin khi mua sản phẩm
Description: Dành cho khách vãng lai điền thông tin để có thêm nhiều chức năng
cho vi c mua bán s n phệ ả ẩm, cũng như tạo m i quan hố ệ lâu dài với công ty Qua đó,
thành viên sẽ được hưởng chế độ khuy n mế ại đặc biệt
Input: Khách vãng lai phải nhập đầy đủ các thông tin
Họ tên:
Địa chỉ:
Mail:
Điện thoại: Nhập điện thoại
Process: Ki m tra thông tin nh p N u thông tin chính xác sể ậ ế ẽ lưu thông tin vào CSDL
Trang 21
Output: Đưa ra thông báo thành công hoặc yêu c u nhập l i nếu thông tin không ầ ạhợp l ệ
3.4.1.2 Chức năng xem thông tin sản phẩm
+ Description: Cho phép xem chi ti t thông tin c a s n phế ủ ả ẩm
+ Input: Ch n s n ph m c n xem ọ ả ẩ ầ
+ Process: L y thông tin s n ph m t CSDL thông qua ID ấ ả ẩ ừ
+ Output: Hi n chi ti t thông tin s n phệ ế ả ẩm
3.4.1.3 Chức năng giỏ hàng
+ Description: Cho phép xem chi ti t gi hàng ế ỏ
+ Input: Click ch n vào gi hàng ọ ỏ
+ Process: L y thông tin s n ph m tấ ả ẩ ừ CSDL thông qua ID ID này được lấy từ biến session lưu các thông tin về mã s n ph m và sả ẩ ố lượng c a t ng s n ph m mà ủ ừ ả ẩkhách hàng ch n vào gi hàng ọ ỏ
+ Output: Hi n th thông tin v tên s n ph m, ể ị ề ả ẩ ảnh, đơn giá, số lượng, thành ti n, ềtổng ti n c a s n phề ủ ả ẩm
+ Output: Đưa ra thông báo đơn đặt hàng đã được lập thành công ho c không ặthành công
3.4.2 Chức năng của Administrator
3.4.2.1 Các chức năng quản lý khách hàng
Chức năng xoá, xem thông tin khách hàng:
+ Description: Giúp Admin có th xóa thông tin ra kh i CSDL ể ỏ
+ Input: Ch n thông tin khách hàng c n xóa ọ ầ
+ Process: Lấy các thông tin của khách hàng và hiển thị ra màn hình để chắc chắn r ng ằ Admin xóa đúng khách hàng cần thiết
+ Output: Load lại danh sách để ết được đã xoá thành công ra khỏ bi i CSDL
Trang 22
3.4.2.2 Các chức năng quản lý Sản Phẩm
Chức năng chỉnh sửa thông tin sản phẩm:
+ Description: Giúp Admin thay đổi thông tin của sản phẩm đã có trong CSDL + Input: Admin nh p thông tin m i c a s n phậ ớ ủ ả ẩm
+ Output: Hi n thể ị thông báo đã cập nhật sản phẩm
Chức năng xoá sản phẩm:
+ Description: Giúp Admin có th xoá s n ph m ể ả ẩ
+ Input: Ch n s n ph m c n xoá ọ ả ẩ ầ
+ Process: Xoá trong CSDL
+ Output: Load l i danh sách s n ph m ạ ả ẩ
Chức năng thêm sản phẩm:
+ Description: Giúp Admin có th thêm s n ph m m ể ả ẩ ới
+ Input: Admin nh p vào nh ng thông tin c n thi t c a s n ph m mậ ữ ầ ế ủ ả ẩ ới
+ Process: Ki m tra xem nhể ững trường nào không được để trống N u t t cế ấ ả đều phù h p thì ợ thêm vào database Ngược lại thì không thêm vào database
+ Output: Load l i danh sách s n phạ ả ẩm để xem s n ph m mả ẩ ới đã được thêm vào CSDL
Chức năng khuyến mãi:
+ Description: Giúp Admin có thể đăng tin một chương trình khuyến mãi
+ Input: ch n thông tin khuyọ ến mãi và đăng tải
+ Process: Thêm thông tin khuy n m i vào trong CSDL ế ạ
+ Output: Load thông tin khuy n m i vế ạ ừa đưa vào
3.4.2.3 Các chức năng quản trị người dùng
Chức năng thêm, sử a, xóa v ới nhân viên hoặc người qu ản trị:
+ Description: Giúp Admin có thể thêm, sửa, xoá người dùng
+ Input: Tìm User c n xoá và ch n biầ ọ ểu tượng xoá
+ Process: Xoá User ra kh i CSDL ỏ
+ Output: Load lại danh sách người dùng để xem thông tin vừa thay đổi
3.4.2.4 Các Chức Năng Đối Với Hóa Đơn Đặt Hàng
Chức năng xem thông ti n chi tiết các đơn đặt hàng (đang chờ được xử lý, đang
xử lý, đã hoàn thành,hoặc hoá đơn bị huỷ bỏ):
+ Description: Xem chi tiết đơn đặt hàng có trong CSDL
+ Input: Chọn tên hoá đơn hoặc tên khách hàng của hoá đơn đó
+ Process: L y toàn b thông tin chi t cấ ộ tiế ủa đơn đặt hàng có trong CSDL
+ Output: Hi n th chi tiể ị ết thông tin trong đơn đặt hàng
Trang 23
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 4.1 Sơ đồ Usecase
4.1.1 Biểu đồ use case tổng quát
Biểu đồ use case tổng quát biểu diễn sơ đồ chức năng chính của hệ thống Từ tập yêu cầu của hệ thống, biểu đồ use case chỉ ra hệ thống cần thực hiện những điều gì để đáp ứng nhu cầu của người sử dụng hệ thống
Người quản trị web (admin) thông qua đăng nhập để thực hiện tìm kiếm, quản lý, thống kê các sản phẩm, đơn hàng, khách hàng và chi tiết khác trên website
Khách hàng khi truy cập vào website có thể thực hiện các chức năng: xem sản phẩm, tìm kiếm sản phẩm, đăng ký thành viên, liên hệ quảng cáo, gởi góp ý… và thông qua đăng nhập thành viên để đặt hàng, thay đổi thông tin cá nhân, xem thông tin đơn hàng
Hình 4 1: Biểu đồ use case tổng quát
Trang 24
4.1.2 Biểu đồ use case chi tiết
Sơ đồ use case
Hình 4 2: Sơ đồ use case đăng nhập
Mục đích Đăng Nhập
Mô tả Giúp người quản trị đăng nhập vào hệ thống
Tác nhân Người quản trị
Điều kiện trước Phải có tài khoản trong hệ thống
+ Người dùng nhập tài khoản và m t khậ ẩu
+ Hệ thống kiểm tra thông tin đăng nhập
+ Hệ thống lấy thông tin đăng nhập
+ Hệ thống báo đăng nhập thành công
và cho phép người dùng đăng nhập lại hoặc kết thúc
Điều kiện sau Đăng nhập thành công vào tài kho n t n t i trên websiteả ồ ạ
Bảng 4 : UC đăng nhập1
Trang 25
Sơ đồ use case
Hình 4 3: Sơ đồ use case quản trị viên
Mục đích Quản lý
Mô tả Trang qu n lý bao gả ồm: Quản lý loại s n phẩả m, hi u sản ệ
phẩm, s n ph m, gi hàng ả ẩ ỏQuản tr viên có th thêm, xóa, sị ể ửa để c p nh t thông tin ậ ậtrong t ng danh mừ ục
Tác nhân Quản trị viên
Điều kiện trước Đăng nhập
và yêu c u nh p lầ ậ ại
Điều kiện sau Quay v trang chề ủ
Bảng 4 2: UC Qu n lý qu n tr viên (Admin) ả ả ị
Trang 26
Sơ đồ use case
Hình 4 4: Sơ đồ use case quản lý đơn hàng
Tên Use Case Quan li don hang (Quản lý đơn hàng)
Mô tả Người dùng có thể chọn các chức năng:
-Xem đơn hàng chưa giao +Xóa đơn hàng
+Xem đơn hàng
+Xác nh n trậ ạng thái đơn hàng:
-Xem l ch sị ử đơn hàng thành công
Điều kiện trước Phải có tài khoản đăng nhập và tài khoản đang được đăng
nhập vào hệ thống
Điều kiện sau Không có
Trang 27
Luồng s kiện chính ự 1 Người dùng ch n chọ ức năng quản lý đơn hàng
2 Hệ thống s hi n thẽ ể ị form cho phép người dùng chọn chức năng xem đơn hàng chưa giao hoặc xem l ch sị ử đơn hàng đã giao thành công
3 Người dùng chọn chức năng xem đơn hàng chưa giao
4 Người dùng ch n chọ ức năng xem lịch sử đơn hàng
đã giao
5 Hệ thống s hi n thẽ ể ị danh s n phả ẩm các đơn hàng
đã giao thành công
6 Use Case k t thúc ếLuồng s kiện ph ự ụ Không có
Bảng 4 3: UC Qu n lý ả đơn hàng
Sơ đồ use case
Hình 4 5: Sơ đồ use case quản lý tài khoản cá nhân
Tên Use Case Quản lý tài kho n ả
Mô t ả Use Case cho phép thành viên th c hi n chự ệ ức năng:
Trang 28
+Cập nh t thông tin cá nhân ậ-Quản lý đơn hàng:
+Xem +Hủy đơn hàng Điều kiện trước Phải có tài khoản đăng nhập và tài khoản đang được
đăng nhập vào hệ thống
Điều kiện sau Không có
Luồng s kiện ự
chính
1 Người dùng ch n chọ ức năng quản lý tài kho n ả
2 Hiển thị Form cho phép người dùng chọn
“Xem thông tin cá nhân” hoặc “Quản lý đơn hàng”
3 Người dùng ch n chọ ức năng Xem thông tin cá nhân
4 Hiển thị Form cho phép người dùng ch n ọ
“Cập nhật thông tin cá nhân” hoặc “Đăng xuất”
5 Người dùng chọn “Đăng xuất”
6 Hệ thống đăng xuất tài khoản và tr vở ề Form trang ch ủ
7 Người dùng chọn “Cập nh t thông tin cá ậnhân”
8 Hệ thống tr v Form thông tin cá nhân cả ề ủa người dùng Gồm Họ tên, SĐT, Địa Chỉ, Tên tài khoản, Đổi m t kh u ậ ẩ
9 Người dùng nh p thông tin vào Form thông tin ậ
cá nhân
10 Hệ thống c p nhậ ật thông tin người dùng
11 Người dùng chọn “Đổi mật khẩu”
12 Hệ thống hi n thể ị Form đổi mật kh u g m Mẩ ồ ật khẩu cũ và Mật khẩu mới
Trang 29
13 Người dùng nhập mật khẩu cũ và mới
14 Hệ thống ki m tra n u h p lể ế ợ ệ thì thông báo đổi mật khẩu thành công và lưu lại mật kh u vào ẩCSDL
15 Kết thúc Use case
Luồng s kiện ph ự ụ Không có
Bảng 4 4: UC Quản lý tài khoản cá nhân
Sơ đồ use case
Hình 4 6: Sơ đồ use case tìm kiếm
Tên Use Case Tim kiem (Tìm kiếm)
Mô t ả Người dùng tìm kiếm s n ph m b ng cách nh p vào ô ả ẩ ằ ậ
tìm ki m ếĐiều kiện trước Nhập tên cần tìm(theo tên, giá, hãng…)
Trang 30
Điều kiện sau Không có
Luồng s kiện chính ự 1 Người dùng ch n chọ ức năng tìm kiếm
2 Hiển thị giao diện cho phép người dùng tìm kiếm
3 Người dùng nh p dậ ữ liệu text c n tìm vào thanh ầ
dữ liệu và b m nút Tìm ấ
4 Hệ thống ki m tra dể ữ liệu người dùng nhập và đối chiếu v i CSDL ớ
4.1 N u có t n t i dế ồ ạ ữ liệu trong CSDL thì hi n ểthị s n ph m liên quan ả ẩ
4.2 N u không có dế ữ liệu trong CSDL thì thông báo “Không tìm thấy”
5 Kết thúc Use case
Luồng s kiện ph ự ụ Không có
Bảng 4 5: UC Tìm kiếm
Sơ đồ use case
Hình 4 7: Sơ đồ use case đăng ký
Trang 31
Tên Use Case Đăng ký
Mô t ả Người dùng đăng ký tài khoản mới
Điều kiện trước Không có
Điều kiện sau Không có
Luồng s kiện chính ự 1. Người dùng ch n chọ ức năng đăng ký
2 Hiển thị form đăng ký
3 Người dùng nhập vào form sau đó nhấn nút đăng
Trang 32
Sơ đồ use case
Hình 4 8: Sơ đồ use case đăng nhập
Tên Use Case Đăng nhập
Mô t ả Người dùng đăng nhập vào hệ thống
Điều kiện trước Không có
Điều kiện sau Không có
Luồng sự kiện
chính
1 Người dùng ch n chọ ức năng đăng nhập
2 Hiển thị form đăng nhập
3 Người dùng nhập vào form sau đó nhấn nút đăng nhập
4 Hệ thống sẽ kiểm tra tính h p l c a dợ ệ ủ ữ liệu 4.1 N u h p lế ợ ệ, hệ thống sẽ kiểm tra trong csdl
có t n t i user hay không, n u t n tồ ạ ế ồ ại thì đưa ra thông báo đăng nhập thanh công, nếu không tồn tại thì đưa ra thông báo “Sai thông tin đăng nhập”
4.2 Nếu không h p lợ ệ, hệ thống sẽ đưa ra thông