1. Trang chủ
  2. » Tất cả

Báo cáo đồ án môn học phát triển phần mềm mã nguồn mở đề tài xây website bán sách cho sinh viên

51 14 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng Website Bán Sách cho Sinh Viên
Tác giả Tô Thị Kim Ngân
Người hướng dẫn Ths. Nguyễn Hữu Vĩnh
Trường học Trường Đại Học Thủ Dầu Một
Chuyên ngành Phát triển phần mềm mã nguồn mở
Thể loại Báo cáo đồ án môn học
Năm xuất bản 2020
Thành phố Bình Dương
Định dạng
Số trang 51
Dung lượng 1,81 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong một nỗ lực hợp tác và bắt đầu xây dựng dựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus và Zeev đã quyết định hợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp củ

Trang 1

TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT

Viện Kỹ thuật Công nghệ -

BÁO CÁO ĐỒ ÁN MÔN HỌC Phát triển phần mềm mã nguồn mở

Đề tài

Xây dựng Website Bán Sách cho Sinh Viên

Giáo viên hướng dẫn : Nguyễn Hữu Vĩnh

Trang 2

TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT

Viện Kỹ thuật Công nghệ -

BÁO CÁO ĐỒ ÁN MÔN HỌC Phát triển phần mềm mã nguồn mở

Đề tài

Xây dựng Website Bán Sách cho Sinh Viên

Giáo viên hướng dẫn : Nguyễn Hữu Vĩnh

Trang 3

TRƯỜNG ĐẠI H C TH DỌ Ủ ẦU M T

Viện Kỹ Thuật – Công Nghệ NHẬN XÉT VÀ CHẤM ĐIỂM CỦA GIẢNG VIÊN HƯỚNG DẪN

Họ và tên giảng viên: Ths Nguyễn Hữu Vĩnh

Tên đề tài: Xây dựng Website Bán Sách cho Sinh Viên

Nội dung nhận xét:

Điểm:

Bằng số:

Bằng chữ:

GIẢNG VIÊN

(Ký, ghi rõ họ tên)

Nguyễn Hữu Vĩnh

Trang 4

Lời Giới Thiệu

Hiện nay, dưới sự phát triển của công nghệ thông tin, đặc biệt là trong lĩnh vực thương mại điện tử đã giúp các cá nhân, doanh nghiệp có mặt hàng dễ dàng tiếp cận được với người tiêu dùng Hầu hết họ đều có website để giới thiệu về sản phẩm của doanh nghiệp mình Đứng trước nhu cầu thiết kế website của các cá nhân, doanh nghiệp cũng như việc đam mê lập trình ứng dụng web Đề tài em đã chọn để giải quyết vấn đề trên chúng em xin giới thiệu về các loại sách mà Nhà sách kinh doanh, và mở ra một nơi để các bạn yêu mến đọc sách đến để lại bình luận về quyển sách mà các bạn ưa thích

Thực hiện đồ án là cơ hội để em áp dụng, tổng hợp các kiến thức đã học trên lớp, đồng thời đúc kết được những bài học thực tế phục vụ cho việc học tập và làm việc sau này Mặc dù đã rất cố gắng thực hiện đề tài nhưng vì năng lực cũng như thời gian còn hạn chế nên chương trình khó tránh khỏi những thiếu xót, rất mong thầy thông cảm

- Giới thiệu sơ lược về bản thân

 Tô Thị Kim Ngân:

https://github.com/kimngan1999

Bình Dương, ngày 30 tháng 11 năm 2020

Sinh viên thực hiện

Tô Th Kim Ngân

Trang 5

Mục lục

Chương 1 :Giới Thiệu 6

1.1 Giới thiệu đề tài 6

1.2 Phạm vi của đề tài 6

1.3 Chức năng chính của đề tài 6

1.4 Công nghệ trong dự án 6

Chương 2 CHƯƠNG 2: TỔNG QUAN PHP & MYSQL 7

2.1 Giới thiệu PHP 7

2.2 Lịch sử phát triển của PHP 7

2.3 Tại sao chọn PHP? 10

2.4 Giới thiệu MySQL 10

2.5 Tại sao chọn MySQL? 10

2.6 Tại sao lại là Framwork Laravel 11

Chương 3 : Phân tích và thiết kế hệ thống 13

3.1 Biểu đồ Class 13

3.1.1 Sơ đồ Class tổng quan 13

3.1.2 Mô tả từng Class 13

3.2 Biểu đồ Use-Case 19

3.2.1 Sơ đồ tổng quan 19

3.2.2 Đặc tả các use-case 19

3.3 Biểu đồ trình tự 28

3.3.1 Đăng ký 28

3.3.2 Đăng nhập 28

3.3.3 Xem sản phẩm 29

3.3.4 Tìm kiếm sản phẩm 29

3.3.5 Đặt hàng 30

3.3.6 Kiểm tra tình trạng đơn hàng 30

3.3.5 Quản lý thông tin cá nhân 31

3.4 Biểu đồ hoạt động 31

3.4.1 Đăng ký 31

3.4.2 Đăng nhập 32

3.4.3 Xem sản phẩm 32

3.4.4 Tìm kiếm sản phẩm 33

3.4.5 Đặt hàng 33

3.4.6 Kiểm tra tình trạng đơn hàng 33

3.4.7 Quản lý thông tin cá nhân 34

Chương 4 : Giao diện phần mềm website 35

Trang 6

4.1 Trang chủ 35

4.2 Trang đăng ký 36

4.3 Trang đăng nhập 36

4.4 Trang chi tiết sản phẩm 37

4.5 Trang tìm kiếm sản phẩm 38

4.6 Trang đổi mật khẩu 38

4.7 Trang quên mật khẩu 39

4.8 Trang đặt hàng 39

4.9 Trang chỉnh sửa thông tin cá nhân 40

4.10 Trang sản phẩm theo thể loại 41

4.11 Trang giới thiệu 42

4.12 Trang quản trị admin quản lý sản phẩm 43

4.13 Trang chỉnh sửa banner 43

4.14 Trang quản trị admin thêm sản phẩm 44

4.15 Trang quản trị admin xoá sản phẩm 44

4.16 Trang kiểm tra đơn hàng 45

4.17 Chỉnh quyền hạn 45

4.18 Trang admin danh mục chủ đề 46

4.19 Trang thêm chủ đề sách 46

Chương 5 : Cài đặt và Kiểm thử 47

5.1 Sơ lược về website 47

5.2 Cấu trúc website 47

5.3 Chức năng sự kiện trong website 47

5.4 Cài đặt Selenium kiểm thử phần mềm 47

Chương 6 : Tài liệu tham khảo 48

6.1 Sách 48

6.2 Internet 48

Trang 7

Danh Mục Hình

Hình 1: Sơ đồ class tổng quát 13

Hình 2: Table Sach 13

Hình 3:Table slide 14

Hình 4: User 15

Hình 5: Table Customer 16

Hình 6: Table type_products 17

Hình 7: Table bills 17

Hình 8: Table bill_detail 18

Hình 9: Use-case tổng quan 19

Hình 10: Use-case đăng nhập 19

Hình 11: Use-case Đăng xuất 20

Hình 12:Use-case Xem sản phẩm 21

Hình 13:Use-case Xem giỏ hàng 22

Hình 14: Use-case Cập nhật giỏ hàng 23

Hình 15:Use-case Mua Hàng 24

Hình 16:Use-case Thanh Toán 25

Hình 17:Use-case Quản lý đơn hàng 26

Hình 18: Use-case cập nhật sản phẩ 26

Hình 19: Xem tình trạng đơn hàn 27

Hình 20: Sơ đồ Đăng ký 28

Hình 21: Sơ đồ Đăng Nhập 28

Hình 22: Sơ đồ Xem sản phẩm 29

Hình 23: Sơ đồ Tìm kiếm sản phẩm 29

Hình 24: Sơ đồ Đặt hàng 30

Hình 25: Sơ đồ Kiểm tra tình trạng đơn hàng 30

Hình 26:Sơ đồ Quản lý thông tin cá nhân 31

Hình 27:Sơ đồ hoạt động Đăng ký 31

Hình 28:Sơ đồ hoạt động Đăng nhập 32

Hình 29: Sơ đồ hoạt động xem sản phẩm 32

Hình 30: Sơ đồ hoạt động Tìm kiếm sản phẩm 33

Hình 31: Sơ đồ hoạt động Đặt hàng 33

Hình 32: Sơ đồ hoạt động Tình trạng đơn hàng 33

Hình 33:Sơ đồ hoạt động quản lý thông tin cá nhân 34

Hình 34: Trang chủ 35

Hình 35: Trang đăng 36ký Hình 36: Trang đăng nhập 36

Hình 37: Trang chi tiết sản phẩm 37

Hình 38: Trang tìm kiếm sản phẩm 38

Hình 39: Trang đổi mật khẩu 38

Hình 40: Trang quên mật khẩu 39

Hình 41:Trang đặt hàng 39

Hình 42:Trang chỉnh sửa thông tin cá nhân 40

Hình 43:Trang sản phẩm theo thể loại 41

Hình 44:trang giới thiệu 42

Hình 45:Trang quản trị sản phẩm 43

Hình 46:Trang chỉnh sửa banner 43

Hình 47:Trang quản trị thêm mới sản phẩm 44

Trang 8

Hình 48:Trang quản trị xoá sản phẩm 44

Hình 49:Trang kiểm tra đơn hàng 45

Hình 50:Trang chỉnh sửa quền hạn 45

Hình 51:Trang danh mục chủ đề 46

Hình 52:Trang thêm chủ đề sách 46

Danh Mục Bảng Bảng 1:Sach 14

Bảng 2: slide 14

Bảng 3: User 15

Bảng 4: Customer 16

Bảng 5: type_products 17

Bảng 6: bill 17

Bảng 7: bill_detail 18

Bảng 8: UC đăng nhập 20

Bảng 9:UC Đăng Xuất 21

Bảng 10: UC xem sản phẩ 22

Bảng 11:UC xem giỏ hàng 22

Bảng 12:UC Cập nhật giỏ hàng 23

Bảng 13:UC mua hàng 24

Bảng 14:UC Thanh Toán 25

Bảng 15:UC QL đơn hàng 26

Bảng 16:UC cập nhật sản phẩm 27

Bảng 17:UC tình trạng đơn hang 27

Trang 9

Chương 1 :Giới Thiệu

1.1 Giới thiệu đề tài

Website bán sách dành cho sinh viên là m t trong nhộ ững ý tưởng đã được rất nhiều người làm trước đây, nhưng sở dĩ em chọn đề tài này là để ả c i tiến và s d ng công ngh m i áp d ng vào bài h c Cho website hiử ụ ệ ớ ụ ọ ện đại

và d b o trì d nâng cẽ ả ễ ấp hơn Đồng th i giúp cho vi c kinh doanh buôn ờ ệbán sách và gi i thi u sách c a em tr nên d dàng ớ ệ ủ ở ễ hơn khi có website.Khách hàng sẽ có thể xem thông tin s n phả ẩm định mua và có th tham ểkhảo nội dung trước khi mua sách

1.2 Phạm vi của đề tài

Website chủ ếu xoay quanh vi c giúp khách hàng tìm ki m thông tin s n y ệ ế ảphẩm h ỗ trợ các chức năng phục vụ cho vi c ệ mua hàng và giới thi u s n ệ ảphẩm Đối tượng chính là sinh viên mua sách tham kh o sách t h c sách ả ự ọ

đọc giải trí Tương lai sẽ m rộng hơn thành trang web buôn bán thương ởmại điện tử

1.3 Chức năng chính của đề tài

Hiển th các mị ục sản ph m c a nhà sách, giẩ ủ ới thiệu các mặt hàng sách, có chức năng đăng nhập, đăng ký , đăng nhập để đặt hàng, phân chia chủ đề phân chia các lo i hàng sách Có trang qu n lí cạ ả ủa admin để qu n lí s n ả ảphẩm, chỉnh sửa sản ph m và xóa s n phẩ ả ẩm

1.4 Công ngh trong d ự án

Về ngôn ng l p trình: s d ng ngôn ng PHP, framwrok Laravel, ữ ậ ử ụ ữ

Symphony, Composer, Artisan terminal, H qu n tr CSDL Xampp MySQL ệ ả ịphpmyadmin

Về n n t ng ng d ng: s d ng Laravel làm theo mô hình MVC, vi t trên ề ả ứ ụ ử ụ ếIDE Visual Code

Về ph n c ng: ầ ứ Yêu cầu máy có c u hình tấ ối thiểu 2 Core, 2GB RAM, 10

GB ổ c ng ứ

Trang 10

Chương 2 CHƯƠNG 2: TỔ NG QUAN PHP & MYSQL 2.1 Giới thiệu PHP

PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ,

mã nguồn mở, dùng cho mục đích tổng quát Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn,

cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới

Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng bởi cộng đồng và có sự đóng góp rất lớn của Zend Inc., công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh nghiệp

2.2 L ịch s phát triển của PHP

2.2.1 PHP/FI

PHP được phát triển từ một sản phẩm có tên là PHP/FI PHP/FI do Rasmus Lerdorf tạo

ra năm 1995, ban đầu được xem như là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng Ông đã đặt tên cho bộ

mã kịch bản này là "Personal Home Page Tools" Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho người sử dụng phát triển các ứng dụng web đơn giản Rasmus đã quyết định công

bố mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong nó đồng thời cải tiến mã nguồn.

PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một số các chức năng cơ bản cho PHP như ta đã biết đến chúng ngày nay Nó có các biến kiểu như Perl, thông dịch tự động các biến của form và cú pháp HTML nhúng Cú pháp này giống như của Perl, mặc dù hạn chế hơn nhiều, đơn giản và có phần thiếu nhất quán

Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút được hàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đã được ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng Internet Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án của một người

PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời gian khá dài chỉ được công bố dưới dạng các bản beta Nhưng không lâu sau đó, nó đã được thay thế bởi các bản alpha đầu tiên của PHP 3.0

Trang 11

2.2.2 PHP 3

PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với các phiên bản PHP mà chúng ta được biết ngày nay Nó đã được Andi Gutmans và Zeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó Lý do chính mà họ đã tạo ra phiên bản này là do nhận họ thấy PHP/FI 2.0 hết sức yếu kém trong việc phát triển các ứng dụng thương mại điện tử mà họ đang xúc tiến trong một dự án của trường đại học Trong một nỗ lực hợp tác và bắt đầu xây dựng dựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus

và Zeev đã quyết định hợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp của

PHP/FI 2.0, và chấm dứt phát triển PHP/FI 2.0.Một trong những sức mạnh lớn nhất của PHP 3.0 là các tính năng mở rộng mạnh mẽ của nó Ngoài khả năng cung cấp cho người dùng cuối một cơ sở hạ tầng chặt chẽ dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tính năng mở rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đề xuất các mô đun mở rộng mới Hoàn toàn có thể kết luận được rằng đây chính là điểm mấu chốt dẫn đến thành công vang dội của PHP 3.0 Các tính năng khác được giới thiệu trong PHP 3.0 gồm có

hỗ trợ cú pháp hướng đối tượng và nhiều cú pháp ngôn ngữ nhất quán khác

Ngôn ngữ hoàn toàn mới đã được công bố dưới một cái tên mới, xóa bỏ mối liên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI 2.0 gợi nhắc Nó đã được đặt tên ngắn gọn là "PHP", một kiểu viết tắt hồi quy của "PHP: Hypertext Preprocessor"

Vào cuối năm 1998, PHP đã phát triển được con số cài đặt lên tới hàng chục ngàn người sử dụng và hàng chục ngàn web site báo cáo là đã cài nó Vào thời kì đỉnh cao, PHP 3.0 đã được cài đặt cho xấp xỉ 10% số máy chủ web có trên mạng Internet

PHP 3.0 đã chính thức được công bố vào tháng 6 năm 1998, sau thời gian 9 tháng được cộng đồng kiểm nghiệm

2.2.3 PHP 4

Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, Andi

Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP Mục đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, và cải tiến tính mô đun của cơ

sở mã PHP Những ứng dụng như vậy đã chạy được trên PHP 3.0 dựa trên các tính năng mới

và sự hỗ trợ khá nhiều các cơ sở dữ liệu và API của bên thứ ba, nhưng PHP 3.0 đã không được thiết kế để xử lý các ứng dụng phức tạp như thế này một cách có hiệu quả

Một động cơ mới, có tên "Zend Engine" (ghép từ các chữ đầu trong tên của Zeev và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thành công, và lần đầu tiên được giới thiệu vào giữa năm 1999 PHP 4.0, dựa trên động cơ này, và đi kèm với hàng loạt các tính năng mới bổ sung, đã chính thức được công bố vào tháng 5 năm 2000, gần 2 năm sau khi bản PHP 3.0 ra đời Ngoài tốc độ xử lý được cải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủ yếu khác gồm có sự hỗ trợ nhiều máy chủ web hơn, hỗ trợ phiên làm việc HTTP,

Trang 12

tạo bộ đệm thông tin đầu ra, nhiều cách xử lý thông tin người sử dụng nhập vào bảo mật hơn

và cung cấp một vài các cấu trúc ngôn ngữ mới

Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàng triệu site

đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên mạng Internet

Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn người và nhiều nghìn người khác tham gia vào các dự án có liên quan đến PHP như PEAR, PECL và tài liệu kĩ thuật cho PHP

2.2.4 PHP 5

Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triển PHP tự mãn.Cộng đồng PHP đã nhanh chóng giúp họ nhận ra những yếu kém của PHP 4 đặc biệt với khả năng hỗ trợ lập trình hướng đối tượng (OOP), xử lý XML, không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụ web yếu Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine 2.0, lõi của PHP 5.0 Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắt đầu vào thời điểm tháng 12 năm 2002 nhưng những bài phỏng vấn Zeev liên quan đến phiên bản này thì đã có mặt trên mạng Internet vào khoảng tháng 7 năm 2002 Ngày 29 tháng 6 năm 2003, PHP 5 Beta 1 đã chính thức được công bố để cộng đồng kiểm nghiệm Đó cũng là phiên bản đầu tiên của Zend Engine 2.0 Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với sự xuất hiện của hai tính năng rất được chờ đợi: Iterators, Reflection nhưng namespaces một tính năng gây tranh cãi khác đã

bị loại khỏi mã nguồn Ngày 21 tháng 12 năm 2003: PHP 5 Beta 3 đã được công bố để kiểm tra với việc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàm PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới PHP 5 bản chính thức đã ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi khá dài các bản kiểm tra thử bao gồm Beta 4, RC 1, RC2, RC3 Mặc dù coi đây là phiên bản sản xuất đầu tiên nhưng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể là lỗi xác thực HTTP

Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 được PHP Team công bố đánh dấu sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong việc tạo ra một hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực hiện các câu truy vấn Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục có những cải tiến trong nhân Zend Engine 2, nâng cấp mô đun PCRE lên bản PCRE 5.0 cùng những tính năng và cải tiến mới trong SOAP, streams và SPL

2.2.5 PHP 6

Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sử dụng thử đã

có thể được download tại địa chỉ http://snaps.PHP.net Phiên bản PHP 6 được kỳ vọng sẽ lấp đầy những khiếm khuyết của PHP ở phiên bản hiện tại, ví dụ: hỗ trợ namespace (hiện tại các

Trang 13

nhà phát triển vẫn chưa công bố rõ ràng về vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ sẽ bị đưa ra thành thư viện PECL…

 Mã nguồn mở

 Tính Cộng đồng của PHP

 Thư viện phong phú

 Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu

 Lập trình hướng đối tượng

 Tính Bảo mật

 Khả năng mở rộng cho PHP

2.4 Giới thiệu MySQL

MySQL là hệ quản trị cơ sở dữ liệ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 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 MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ Nó 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, …

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

Trang 14

MySQL không chỉ là cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới, nó còn trở thành cơ sở dữ liệu đượ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

2.6 T ại sao l i là Framwork Laravel

Đối với mỗi developer, đặc biệt là các PHP developer chắc hẳn ai cũng biết đến Laravel một open source framework đứng đầu về số lượt download trên Packagist cũng như số lượng sao đạt được trên Github Laravel được tạo ra bởi Taylor Otwell với phiên bản đầu tiên được

ra mắt vào tháng 6 năm 2011 Từ đó cho đến này, Laravel đã phát triển một cách mạnh mẽ, vượt qua những framework khác và vươn lên trở thành framework PHP có thể nói được ưa chuộc và được cộng đồng sử dụng nhiều nhất khi phát triển web với PHP Dưới đây là biểu

đồ cho thấy sự tăng trưởng về số lượng sao trên github của Laravel so với một số framework khác

1 Dễ dàng sử dụng

Lý do đầu tiên khiến Laravel nhanh chóng được cộng đồng đón nhận và sử dụng nhiều là

do nó rất dễ để có thể sử dụng Ngay cả khi bạn chỉ mới chỉ có những kiến thức cơ bản nhất

về lập trình web với PHP thì việc bắt đầu sử dụng Laravel cũng chỉ mất vài giờ là bạn có thể bắt tay vào việc làm một project nhỏ

Document mà Laravel cung cấp trên trang chủ của mình được viết rất rõ ràng và dể hiểu giúp cho bạn nhanh chóng có thể tìm được những gì mình muốn

2 Xây dựng theo mô hình MVC

Laravel được xây dựng và phát triển theo mô hình MVC (Model -View- Controller) nhờ

đó mà cấu trúc và cách tổ chức code trong project được sắp xếp một cách hợp lý dễ dàng cho việc maintain cũng như phát triển về lâu dài

3 Các tính năng dựng sẵn

Trang 15

Bản thân Laravel đã cung cấp cho người dùng rất nhiều các nhóm tính năng giúp quá trình phát triển trở nên nhanh chóng hơn rất nhiều lần

Chỉ với một câu lệnh đơn giản

“ $ php artisan make:auth “

là bạn đã dựng được cho mình toàn bộ các tính năng như đăng nhập, đăng xuất, đăng kí, quên mật khẩu mà không tốn công code một dòng nào cả Tất nhiên bạn cũng có thể tự mình chỉnh sửa lại logic sao cho hợp với nhu cầu sử dụng cá nhân

4 Các tính năng bảo mật

Để giúp lập trình viên có thể tối đa thời gian tập chung vào việc phát triển các tính năng, Laravel đã cung cấp sẵn cho người dùng các tính năng bảo mật cơ bản như:

ORM của Laravel sử dụng PDO thay vì mysqli để chống lại tấn công SQL Injection

Laravel sử dụng một field token ẩn để chống lại tấn công kiểu CSRF.

Các biến được đưa ra view mặc định đều được Laravel escape để tránh tấn công XSS

5 Cộng đồng mạnh mẽ

Chắc hẳn trong quá trình làm việc, bạn có thể sẽ gặp rất nhiều những vấn đề, nhưng bug phát sinh nhưng chưa tìm được câu trả lời Nhưng may thay nếu bản sử dụng Laravel vướng mắc của bạn có thể đã được người khác giải quyết và bạn có thể lập tức sử dụng đáp án đó hoặc nếu không khi bạn đặt câu hỏi trên các diễn đàn thì cộng đồng đông đảo người sử dụng Laravel sẽ hỗ trợ bản giải quyết vấn đề đó.

Các website tin tức có nội dung cập nhật hàng giờ, các trang web bán hàng lớn như Lazada cũng có Laravel tham gia trong một số tính năng hiện hữu, và vì cộng đồng Laravel là cộng đồng framwork lớn và to nhất thế giới, bản thân framwork cũng có lựng người sử dụng

và phát triển hằng quý, hiện tại đã đến version 8.x với cực kì nhiều thay đổi

Nó tương thích nhất với Linux, thường được phát triển hệ thống trên nền tảng hệ điều hành này, tuy nhiên cũng hỗ trở cho windows một cách thiết tha nhất

Sử dụng Laravel để viết một trang web, tuân thủ quy tắc cũng như cấu trức của nó bạn

sẽ có một webstite được xây dựng nhanh chóng và bảo mật

Ngoài việc được support và cộng đồng lớn ra còn có thể linh hoạt chuyển đổi giữa các

mô hình, thay vì MVC như thông thường thì có thể chuyển thành mô hình MVP, MVVC, vv

Trang 16

Chương 3 : Phân tích và thiết kế hệ thống

3.1 Biểu đồ Class

3.1.1 Sơ đồ Class t ng quan

Hình 1 : Sơ đồ class tổng quát

3.1.2 Mô tả t ng Class

Table product

- Bảng product để lưu trữ th ông tin s n ph m ả ẩ

Hình 2: Table Sach

Trang 17

Thuộc tính Mô tả

id (Primary) Tự động tăng, khóa chính của Table

id_type Mã loại sản phẩm thuộc veef

description Mô tả nội dung, thành quả sản phẩm khi

lĩnh hội được

promotion_price Giá giảm của sản phẩm

Image Hình ảnh trùng với tên sản phẩm hình

tương ứng

Bảng 2: slide

Trang 18

Email Email đăng kí tài khoản của người dùng

updated_at Ngày cập nhật thông tin tài khoản

Bảng 3: User

Trang 19

phone_number Số điện thoại khách hàng

created_at Ngày khách hàng đặt hàng

Bảng 4: Customer

Trang 20

Table type_products

- Bảng type_products lưu trữ mã và tên chủ đề

Hình 6: Table type_products

id (Primary) Tự động tăng, khóa chính của Table

Bảng 6: bill

Trang 21

nhà phát triển vẫn chưa công bố rõ ràng về vấn đề này); hỗ trợ Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ sẽ bị đưa ra thành thư viện PECL…

Trang 22

 Thư viện phong phú

 Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu

 Lập trình hướng đối tượng

 Tính Bảo mật

 Khả năng mở rộng cho PHP

MySQL là hệ quản trị cơ sở dữ liệ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 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 MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ Nó 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, …

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

Trang 23

MySQL không chỉ là cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới, nó còn trở thành cơ sở dữ liệu đượ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

Đối với mỗi developer, đặc biệt là các PHP developer chắc hẳn ai cũng biết đến Laravel một open source framework đứng đầu về số lượt download trên Packagist cũng như số lượng

Trang 24

chuộc và được cộng đồng sử dụng nhiều nhất khi phát triển web với PHP Dưới đây là biểu

đồ cho thấy sự tăng trưởng về số lượng sao trên github của Laravel so với một số framework khác

1 Dễ dàng sử dụng

Lý do đầu tiên khiến Laravel nhanh chóng được cộng đồng đón nhận và sử dụng nhiều là

do nó rất dễ để có thể sử dụng Ngay cả khi bạn chỉ mới chỉ có những kiến thức cơ bản nhất

về lập trình web với PHP thì việc bắt đầu sử dụng Laravel cũng chỉ mất vài giờ là bạn có thể bắt tay vào việc làm một project nhỏ

Document mà Laravel cung cấp trên trang chủ của mình được viết rất rõ ràng và dể hiểu giúp cho bạn nhanh chóng có thể tìm được những gì mình muốn

2 Xây dựng theo mô hình MVC

Laravel được xây dựng và phát triển theo mô hình MVC (Model-View-Controller) nhờ

đó mà cấu trúc và cách tổ chức code trong project được sắp xếp một cách hợp lý dễ dàng cho việc maintain cũng như phát triển về lâu dài

3 Các tính năng dựng sẵn

Trang 25

Bản thân Laravel đã cung cấp cho người dùng rất nhiều các nhóm tính năng giúp quá trình phát triển trở nên nhanh chóng hơn rất nhiều lần

Chỉ với một câu lệnh đơn giản

“$ php artisan make:auth “

là bạn đã dựng được cho mình toàn bộ các tính năng như đăng nhập, đăng xuất, đăng kí, quên mật khẩu mà không tốn công code một dòng nào cả Tất nhiên bạn cũng có thể tự mình chỉnh sửa lại logic sao cho hợp với nhu cầu sử dụng cá nhân

4 Các tính năng bảo mật

Để giúp lập trình viên có thể tối đa thời gian tập chung vào việc phát triển các tính năng, Laravel đã cung cấp sẵn cho người dùng các tính năng bảo mật cơ bản như:

ORM của Laravel sử dụng PDO thay vì mysqli để chống lại tấn công SQL Injection

Laravel sử dụng một field token ẩn để chống lại tấn công kiểu CSRF

Các biến được đưa ra view mặc định đều được Laravel escape để tránh tấn công XSS

5 Cộng đồng mạnh mẽ

Chắc hẳn trong quá trình làm việc, bạn có thể sẽ gặp rất nhiều những vấn đề, nhưng bug phát sinh nhưng chưa tìm được câu trả lời Nhưng may thay nếu bản sử dụng Laravel vướng mắc của bạn có thể đã được người khác giải quyết và bạn có thể lập tức sử dụng đáp án đó hoặc nếu không khi bạn đặt câu hỏi trên các diễn đàn thì cộng đồng đông đảo người sử dụng

Laravel sẽ hỗ trợ bản giải quyết vấn đề đó

Các website tin tức có nội dung cập nhật hàng giờ, các trang web bán hàng lớn như Lazada cũng có Laravel tham gia trong một số tính năng hiện hữu, và vì cộng đồng Laravel là cộng đồng framwork lớn và to nhất thế giới, bản thân framwork cũng có lựng người sử dụng

và phát triển hằng quý, hiện tại đã đến version 8.x với cực kì nhiều thay đổi

Nó tương thích nhất với Linux, thường được phát triển hệ thống trên nền tảng hệ điều hành này, tuy nhiên cũng hỗ trở cho windows một cách thiết tha nhất

Sử dụng Laravel để viết một trang web, tuân thủ quy tắc cũng như cấu trức của nó bạn

sẽ có một webstite được xây dựng nhanh chóng và bảo mật

Ngoài việc được support và cộng đồng lớn ra còn có thể linh hoạt chuyển đổi giữa các

mô hình, thay vì MVC như thông thường thì có thể chuyển thành mô hình MVP, MVVC, vv

Ngày đăng: 02/03/2023, 17:35

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w