1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng website bán trái cây trực tuyến bằng ngôn ngữ PHP

73 0 0

Đ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 Trái Cây Trực Tuyến
Tác giả Trần Đình Vỹ
Người hướng dẫn TS. Nguyễn Thị Ngọc Anh
Trường học Trường Đại Học Sư Phạm
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo Cáo Thực Tập Tốt Nghiệp
Năm xuất bản 2024
Thành phố Đà Nẵng
Định dạng
Số trang 73
Dung lượng 5,58 MB
File đính kèm BaoCao-TTTN-TranDinhVy (2).rar (5 MB)

Nội dung

Báo cáo thực tập tốt nghiệp , xây dựng website bán trái cây trực tuyến bằng ngôn ngữ php , mysql báo cáo 9d tốt nghiệp, đầy đủ chức năng , không thiếu thứ gì, bán trái cây online với phpmyadmin, php thuần, Báo cáo thực tập tốt nghiệp , xây dựng website bán trái cây trực tuyến bằng ngôn ngữ php , mysql báo cáo 9d tốt nghiệp, đầy đủ chức năng , không thiếu thứ gì, bán trái cây online với phpmyadmin, php thuần,

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM

KHOA TIN HỌC

@&?

BÁO CÁO THỰC TẬP TỐT NGHIỆP

NGÀNH CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI NGHIÊN CỨU XÂY DỰNG

WEBSITE BÁN TRÁI CÂY TRỰC TUYẾN

Giảng viên hướng dẫn: TS Nguyễn Thị Ngọc Anh Sinh viên thực hiện: Trần Đình Vỹ – 20CNTT1

Đà Nẵng, tháng 04 năm 2024

Trang 2

NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN

Đà Nẵng, ngày … tháng … năm …

Cán bộ hướng dẫn

Trang 3

NHẬN XÉT CỦA HỘI ĐỒNG PHẢN BIỆN

Đà Nẵng, ngày … tháng … năm …

Hội đồng phản biện

Trang 4

LỜI CAM ĐOAN

Em tên là Trần Đình Vỹ - 20CNTT1 Em xin cam đoan đây là đề tài do emthực hiện Các nội dung và kết quả nghiên cứu được trình bày trong báo cáo tốtnghiệp này là trung thực và mọi tham khảo đều được trích dẫn, chỉ rõ nguồn thamkhảo theo đúng quy định

Sinh viên thực hiện

Trần Đình Vỹ

Trang 5

MỤC LỤC

DANH MỤC BẢNG BIỂU 5

MỤC LỤC HÌNH ẢNH 7

LỜI NÓI ĐẦU 9

MỞ ĐẦU 10

1 Lý do chọn đề tài 10

2 Mục tiêu đề tài 10

3 Đối tượng và phạm vi nghiên cứu 11

3.1 Đối tượng nghiên cứu 11

3.2 Phạm vi nghiên cứu 11

4 Phương pháp nghiên cứu 12

5 Ý nghĩa của đề tài 12

5.1 Ý nghĩa khoa học 12

5.2 Ý nghĩa thực tiễn 13

CHƯƠNG 1: NGHIÊN CỨU TỔNG QUAN 14

1 Tìm hiểu về các ngôn ngữ lập trình hỗ trợ 14

1.1 Ngôn ngữ lập trình PHP 14

1.2 HTML,CSS và Javascript 19

2 Hệ quản trị CSDL phpMyAdmin 21

CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 23

1 Các yêu cầu đặt ra cho hệ thống 23

2 Xác định các tác nhân (Actors) 24

3 Xác định các trường hợp sử dụng (Use Case) 25

4 Các chức năng của hệ thống 25

Trang 6

4.1 Chức năng đăng ký 25

4.2 Chức năng đăng nhập 27

4.3 Chức năng tìm kiếm 29

4.4 Chức năng quản lý giỏ hàng 31

4.5 Chức năng đặt hàng 33

4.6 Chức năng quản lý người dùng 35

4.7 Chức năng quản lý sản phẩm 37

4.8 Chức năng quản lý đơn hàng 39

4.9 Chức năng quản lý thống kê 41

5 Thiết kê cơ sở dữ liệu 43

5.1 Bảng Users(Người dùng) 43

5.2 Bảng User(Admin) 44

5.3 Bảng Product(Sản phẩm) 44

5.4 Bảng Category(Danh mục) 45

5.5 Bảng Order( Đơn hàng) 45

5.6 Bảng Order Details(Chi tiết đơn hàng) 46

5.7 Thiết kế biểu đồ lớp 1

6 Biểu đồ hoạt động 48

6.1 Biểu đồ hoạt động đăng ký 48

6.2 Biểu đồ hoạt động đăng nhập 49

6.3 Biểu đồ hoạt động tìm kiếm 49

6.4 Biểu đồ hoạt động quản lý giỏ hàng 50

6.5 Biểu đồ hoạt động đặt hàng 50

6.6 Biểu đồ hoạt động quản lý người dùng 51

Trang 7

6.7 Biểu đồ hoạt động quản lý sản phẩm 51

6.8 Biểu đồ hoạt động quản lý đơn hàng 52

6.9 Biểu đồ hoạt động quản lý thống kê 52

7 Biểu đồ tuần tự 53

7.1 Biểu đồ tuần tự đăng ký 53

7.2 Biểu đồ tuần tự đăng nhập 54

7.3 Biểu đồ tuần tự quản lý giỏ hàng 54

7.4 Biểu đồ tuần tự tìm kiếm 55

7.5 Biểu đồ tuần tự đặt hàng 55

7.6 Biểu đồ tuần tự quản lý đơn hàng 56

7.7 Biểu đồ tuần tự quản lý sản phẩm 56

7.8 Biểu đồ tuần tự quản lý thống kê 57

7.9 Biểu đồ tuần tự quản lý người dùng 57

CHƯƠNG 3 XÂY DỰNG CHƯƠNG TRÌNH 58

1 Thiết kế giao diện chức năng phía người dùng 58

1.1 Đăng ký 58

1.2 Đăng nhập 58

1.3 Trang chủ 59

1.4 Chi tiết sản phẩm 59

1.5 Quản lý giỏ hàng 60

1.6 Đặt hàng 60

2 Thiết kế giao diện chức năng phía quản lý 61

2.1 Giao diện trang chủ admin 61

2.2 Giao diện quản lý đơn hàng 61

Trang 8

2.3 Giao diện quản lý danh mục 62

2.4 Giao diện quản lý sản phẩm 62

2.5 Giao diện quản lý thống kê 63

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 65

1 Kết quả đạt được 65

2 Hạn chế 65

3 Hướng phát triển 66

TÀI LIỆU THAM KHẢO 67

Trang 9

DANH MỤC BẢNG BIỂU

Bảng 1: Bảng đặc tả UseCase đăng ký 26

Bảng 2: Bảng sự kiện chính UseCase đăng ký 26

Bảng 3: Bảng sự kiện phụ UseCase đăng ký 26

Bảng 4: Bảng đặc tả UseCase đăng nhập 28

Bảng 5: Bảng sự kiện chính UseCase đăng nhập 28

Bảng 6: Bảng sự kiện phụ UseCase đăng nhập 28

Bảng 7:Bảng đặt tả UseCase tìm kiếm 30

Bảng 8:Bảng sự kiện chính UseCase tìm kiếm 30

Bảng 9:Bảng sự kiện phụ UseCase tìm kiếm 30

Bảng 10:Bảng đặt tả UseCase quản lý giỏ hàng 32

Bảng 11:Bảng sự kiện chính UseCase quản lý giỏ hàng 32

Bảng 12:Bảng sư kiện phụ UseCase quản lý giỏ hàng 33

Bảng 13:Bảng đặt tả UseCase đặt hàng 34

Bảng 14:Bảngsự kiện chính UseCase đặt hàng 34

Bảng 15:Bảngsự kiện phụ UseCase đặt hàng 34

Bảng 16:Bảng đặt tả UseCase quản lý người dùng 36

Bảng 17:Bảng sự kiện chínhUseCase quản lý người dùng 36

Bảng 18:Bảng sự kiện phụ UseCase quản lý người dùng 36

Bảng 19:Bảng đặt tả UseCase quản lý sản phẩm 38

Bảng 20:Bảng sự kiện chính UseCase quản lý sản phẩm 38

Bảng 21:Bảng sự kiện phụ UseCase quản lý sản phẩm 38

Bảng 22:Bảng đặt tả UseCase quản lí đơn hàng 40

Trang 10

Bảng 23:Bảng sự kiện chính UseCase quản lí đơn hàng 40

Bảng 24:Bảng sự kiện phụ UseCase quản lí đơn hàng 41

Bảng 25:Bảng đặc tả UseCase quản lý đơn hàng 42

Bảng 26: Bảng sự kiện chính UseCase quản lý đơn hàng 42

Bảng 27:Bảng sự kiện phụ UseCase quản lý đơn hàng 43

Bảng 28: Thực thể Users 44

Bảng 29:Thực thể Useṛ ̣̣ 44

Bảng 30:Thực thể Product 45

Bảng 31:Thực thể Category 45

Bảng 32:Thực thể Orders 46

Bảng 33:Thực thể Order_Details 46

Trang 11

MỤC LỤC HÌNH ẢNH

Hình 1.Biểu đồ UseCase đăng kí 27

Hình 2.Biểu đồ UseCase đăng nhập 29

Hình 3 Biểu đồ UseCase tìm kiếm sản phẩm 31

Hình 4.Biểu đồ UseCase Quản lý giỏ hàng 33

Hình 5.Bảng đặt tả UseCase đặt hàng 35

Hình 6 Biểu đồ UseCase quản lý người dùng 37

Hình 7.Biểu đồ UseCase quản lý sản phẩm 39

Hình 8.Biểu đồ UseCase quản lý đơn hàng 41

Hình 9.Biểu đồ UseCase quản lý thống kê 43

Hình 10.Biểu đồ lớp 1

Hình 11: Biểu đồ hoạt động dăng ký 48

Hình 12: Biểu đồ hoạt động đăng nhập 49

Hình 13: Biểu đồ hoạt động tìm kiếm 49

Hình 14: Biểu đồ hoạt động quản lý giỏ hàng 50

Hình 15: Biểu đồ hoạt động đặt hàng 50

Hình 16: Biểu đồ hoạt động quản lý người dùng 51

Hình 17: Biểu đồ hoạt động quản lý sản phẩm 51

Hình 18: Biểu đồ hoạt động quản lý đơn hàng 52

Hình 19: Biểu đồ hoạt động quản lý thống kê 52

Hình 20: Biểu đồ tuần tự đăng ký 53

Hình 21: Biểu đồ tuần tự đăng nhập 54

Hình 22:Biểu đồ tuần tự quản lý giỏ hàng 54

Trang 12

Hình 23: Biểu đồ tuần tự tìm kiếm 55

Hình 24: Biểu đồ tuần tự đặt hàng 55

Hình 25: Biểu đồ tuần tự quản lý đơn hàng 56

Hình 26:Biểu đồ tuần tự quản lý sản phẩm 56

Hình 27:Biểu đồ tuần tự quản lý sản phẩm 57

Hình 28:Biểu đồ tuần tự quản lý người dùng 57

Hình 29: Giao diện trang đăng ký 58

Hình 30: Giao diện trang đăng nhập 58

Hình 31: Giao diện trang chủ 59

Hình 32: Giao diện trang chi tiết sản phẩm 59

Hình 33: Giao diện trang quản lý giỏ hàng 60

Hình 34: Giao diện trang đặt hàng 60

Hình 35: Giao diện trang chủ admin 61

Hình 36: Giao diện trang quản lý đơn hàng 61

Hình 37: Giao diện trang quản lý danh mục 62

Hình 38: Giao diện trang quản lý sản phẩm 62

Hình 39: Giao diện trang cập nhật sản phẩm 63

Hình 40: Giao diện quản lý thống kê theo danh mục 63

Hình 41: Giao diện quản lý thống kê sản phẩm 64

Hình 42: Giao diện quản lý thống kê kho 64

Trang 13

LỜI NÓI ĐẦU

Trong xuyên suốt thời gian học tại trường Đại Học Sư Phạm- Đại Học

Đà Nẵng, cũng như trong khoản thời gian thực hiện và hoàn thành báo cáothực tập tốt nghiệp Em đã nhận được sự giúp đỡ, hướng dẫn, giảng dạynhiệt tình của quý thầy,cô khoa Công Nghệ Thông Tin Em xin chân thànhcảm ơn các thầy cô đã dìu dắt, dạy dỗ em cả về kiến thức chuyên môn vàtinh thần học tập để em có được những kiến thức thực hiện báo cáo thực tậptốt nghiệp của mình

Đặc biệt, em xin phép được bày tỏ tình cảm và lòng biết ơn với cô TS.Nguyễn Thị Ngọc Anh Người đã dìu dắt, từng bước hướng dẫn, giúp emhiểu rõ mục tiêu báo cáo thực tập tốt nghiệp mình cần làm gì, đưa lời khuyêntrong việc lựa chọn đề tài

Để có thể tiến tới đến ngày hôm nay, em rất biết ơn gia đình và người thân

đã cho em cơ hội, nuôi dưỡng, khích lệ, động viên cũng như tạo điều kiện tốtnhất để em được vững bước tiếp tục học tập Cảm ơn những người bạn, anhchị em đã luôn đồng hành và khích lệ giúp đỡ em trong xuất quá trình họctập

Tuy nhiên trong học tập, cũng như trong quá trình làm báo cáo khôngthể tránh khỏi những thiếu sót, em rất mong được sự góp ý quý báu của thầy

cô giáo cũng như các bạn để em có cái nhìn trực quan và kết quả được hoànthiện hơn cũng như có thêm nhiều kinh nghiệm cho công việc sau này

Một lần nữa em xin chân thành cảm ơn!

Trang 14

Hiện nay, hầu hết tại các cửa hàng trái cây đã sử dụng rộng rãi ứngdụng công nghệ thông tin, giúp người dùng dễ dàng đặt mua sản phẩm, dễdàng quản lí thông tin cá nhân,… Bên cạnh đó, sự hỗ trợ mạnh mẽ của cácngôn ngữ lập trình, cùng với sự ra đời của các framework đã thúc đẩy emchọn đề tài “NGHIÊN CỨU XÂY DỰNG WEBSITE BÁN TRÁI TRỰCTUYẾN” để thực hiện đề tài nhằm đáp ứng theo chương trình đào tạo đồngthời mong muốn ứng dụng công nghệ đó vào việc tìm hiểu và đưa ra mộtgiải pháp tốt nhằm giải quyết công việc bán trái cây qua nền tảng trực tuyếncho các cửa hàng Với đề tài này, website sẽ cho phép người sử dụng thựchiện một cách nhanh chóng, chính xác việc tìm kiếm thông tin, các sảnphẩm, giá cả của chúng và tiến hành việc đặt mua trực tuyến, … với giaodiện làm việc thân thiện, tiện dụng với người sử dụng hệ thống, người tiêudùng.

Trang 15

2 Mục tiêu đề tài

Mục tiêu của đề tài là tìm ra giải pháp hiệu quả để giải quyết côngviệc bán trái cây trực tuyến cho các cửa hàng Các mục tiêu cụ thể của đề tàigồm:

Xác định đối tượng mục tiêu của website bán trái cây và nghiên cứuthói quen mua sắm trực tuyến của khách hàng để hiểu rõ nhu cầu và mongmuốn

Thiết kế giao diện người dùng hấp dẫn và dễ sử dụng, bao gồm việcxác định cấu trúc trang web, trang sản phẩm, giỏ hàng và tính năng thanhtoán, đồng thời đảm bảo tích hợp các phương thức thanh toán an toàn

Đề xuất cách quản lý thông tin sản phẩm, kho hàng và đơn hàng bằngcách xây dựng cơ sở dữ liệu hiệu quả để theo dõi thông tin sản phẩm vàkhách hàng

3 Đối tượng và phạm vi nghiên cứu

3.1 Đối tượng nghiên cứu

- Nông dân và doanh nghiệp chuyên sản xuất và cung cấp trái cây.

- Đối tượng có kích thước doanh nghiệp khác nhau và khả năng kỹ

thuật đa dạng

Quản trị viên Website:

- Những người quản lý và duy trì hệ thống trực tuyến.

Trang 16

- Đối tượng này có thể là sinh viên, nhà phát triển web, hoặc những

người quan tâm đến quản lý trang web

3.2 Phạm vi nghiên cứu

- Phân tích và mô tả các chức năng cơ bản như đăng nhập, đăng ký,

quản lý sản phẩm, quản lý đơn đặt hàng, và thanh toán trựctuyến.Đánh giá trải nghiệm người dùng để đảm bảo giao diện thânthiện, dễ sử dụng, và tương thích trên nhiều thiết bị

- Nghiên cứu cách quản lý và hiển thị thông tin sản phẩm một cách hiệu

quả

- Phân tích quy trình quản lý người dùng và đơn đặt hàng.

- Nghiên cứu và thử nghiệm tính năng thanh toán trực tuyến.

- Đảm bảo rằng hệ thống đáp ứng các tiêu chuẩn bảo mật thông tin cá

nhân

- Xem xét tính năng đánh giá và phản hồi từ người mua.

- Đảm bảo tính minh bạch và tin cậy trong thông tin đánh giá.

4 Phương pháp nghiên cứu

- Khảo sát và thu thập thông tin thực tế

- Đọc và tìm hiểu cách phân tích và thiết kế một hệ thống

- Nghiên cứu và tìm hiểu một số phần mềm kinh doanh đồ ăn nhanhtrực tuyến

- Phân tích yêu cầu và đề xuất của phần mềm

- Thiết kế đặc tả hệ thống

- Viết báo cáo

5 Ý nghĩa của đề tài

5.1 Ý nghĩa khoa học

Đề tài đang hướng vào ứng dụng công nghệ thông tin trong lĩnh lĩnhvực chăm sóc sức khỏe, cụ thể là giao diện não-máy tính dựa trên nghiên

Trang 17

cứu các EEG Việc ứng dụng những xu hướng mới trong việc khai phá dữliệu cho việc phân tích tính hiệu não đang nhận được sự quan tâm hàng đầucủa các nhà khoa học và các nhà nghiên cứu nhằm tạo ra những công cụphân tích linh hoạt Đóng góp chính của đề tài là đề xuất cách tiếp cận mớidựa trên đại số Grassmann trong việc trích chọn đặc trưng cho bài toán nhậndiện cảm xúc con người thông qua tín hiệu điện não đồ.

5.2 Ý nghĩa thực tiễn

Hướng đến cuộc cách mạng công nghệ của internet vạn vật, cảm biến

y tế có sẵn trong các thiết bị phục vụ đời sống hằng ngày (điện thoại thôngminh, đồng hồ thông minh), các thiết bị này thu thập và tạo ra rất nhiều dữliệu Hệ thống đề xuất có thể trả lời cho thách thức làm thế nào để phân tích

và xử lý những dữ liệu đó Đề tài nghiên cứu theo hướng tiếp cận mới, kếtquả sẽ được phát hành dưới dạng mã nguồn mở Vì đề tài nghiên cứu dựavào các dữ liệu mở và chia sẻ, mục tiêu là đóng góp kết quả nghiên cứu nhưmột tác động tiềm năng để thiết kế ra các công cụ mới để phân tích và đánhgiá hoạt động của não

Trang 18

CHƯƠNG 1: NGHIÊN CỨU TỔNG QUAN

PHP có thể kết nối những website có giao diện bằng HTML với nhau

để chạy trên hệ thống máy chủ Do có cấu trúc đơn giản, dễ học, ngôn ngữPHP trở thành ngôn ngữ lập trình web căn bản, phù hợp với những người bắtđầu tìm hiểu về lập trình website

b Lịch sử hình thành và phát triển

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 1994, 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ồmmộ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ú

Trang 19

pháp HTML nhúng Cú pháp này giống như của Perl, mặc dù hạn chế hơnnhiề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.000tê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àoviệ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ộtthời gian khá dài chỉ được công bố dưới dạng các bản beta Nhưng không lâusau đó, nó đã được thay thế bởi các bản alpha đầu tiên của PHP 3.0 [1]

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ũivới các phiên bản PHP mà chúng ta được biết ngày nay Nó đã được AndiGutmans 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 họ nhậnthấ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ươngmại điện tử mà họ đang xúc tiến trong một dự án của trường đại học Trongmộ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ủaPHP/FI, Andi, Rasmus và Zeev đã quyết định hợp tác và công bố PHP 3.0như 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/

Trang 20

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ênPHP/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ắthồ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ớihà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áychủ 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ờigian 9 tháng được cộng đồng kiểm nghiệm[1]

c 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ầnlõ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ụngphứ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ệuquả[1]

Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong têncủa Zeev và Andi), đã đáp ứng được các nhu cầu thiết kế này một cách thànhcô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ínhthứ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ínhnăng chủ yếu khác gồm có sự hỗ trợ nhiều máy chủ Web hơn, hỗ trợ phiênlàm việc HTTP, tạo bộ đệm thông tin đầu ra, nhiều cách xử lý thông tinngườ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ônngữ mới[1]

Trang 21

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ênmạ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[1]

d 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ómphát triển PHP tự mãn Cộng đồng PHP đã nhanh chóng giúp họ nhận ranhữ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 đốitượng (OOP), xử lý XML, không hỗ trợ giao thức máy khách mớicủ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ảoluận trên Slashdot đã cho thấy việc phát triển PHP 5.0 có thể đã bắt đầu vàothờ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 Engine2.0 Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với sự xuấthiện của hai tính năng rất được chờ đợi Iterators, Reflection nhưngnamespaces 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ớiviệc phân phối kèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàmPHP bên trong XSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới PHPnăm 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

Trang 22

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ựctrong 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áttriể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 trongSOAP, streams và SPL[1].

e PHP 6

Phiên bản PHP 6 được kỳ vọng sẽ lấp đầy những khiếm khuyết củaPHP ở phiên bản hiện tại, ví dụ: hỗ trợ namespace; hỗ trợ Unicode; sử dụngPDO là API chuẩn cho việc truy cập cơ sở dữ liệu, các API cũ sẽ bị đưa rathành thư viện PECL Phiên bản 6 này chỉ dùng ở việc nghiên cứu và thửnghiệm Sau này PHP bỏ hẳn phiên bản 6 và lên 7[1]

f PHP 7

Với việc sử dụng bộ nhân Zend Engine mới PHPNG cho tốc độ nhanhgấp 2 lần Ngoài ra ở phiên bản này còn thêm vào rất nhiều cú pháp, tínhnăng mới giúp cho PHP trở nên mạnh mẽ hơn Những tính năng mới quantrọng có thể kể đến như:

- Khai báo kiểu dữ liệu cho biến

- Xác định kiểu dữ liệu sẽ trả về cho 1 hàm

- Thêm các toán tử mới (??, <=>, )

Ưu điểm của PHP

PHP có tốc độ hoạt động rất nhanh và mang lại hiệu quả cao Điềunày được chứng minh đó là một server bình thường cũng có thể đáp ứngđược hàng triệu lượt truy cập mỗi ngày

Nếu bạn đã hiểu PHP là gì, bạn sẽ nhận thấy sự kết nối hỗ trợ đếnhàng triệu hệ quản trị cơ sở dữ liệu khác nhau của PHP hiện nay vô cùng

Trang 23

tuyệt vời Đây cũng là lý do vì sao ngôn ngữ lập trình PHP được yêu thíchhàng đầu thế giới.

Không những thế, PHP còn có khả năng cung cấp một hệ thống dữliệu vô cùng phong phú Điều này có được là do ngay từ đầu, PHP đã đượcxây dựng với mục đích xây dựng và phát triển, nâng cao các ứng dụng trênweb Vì vậy, nó cung cấp rất nhiều hàm được xây dựng sẵn giúp người dùng

dễ dàng thực hiện các công việc như: gửi và nhận email, làm việc vớicookie,…

PHP còn sở hữu ưu điểm đó là một ngôn ngữ đơn giản, sử dụng dễdàng đối với cả những người mới bắt đầu nhập môn lập trình web

Đặc biệt, khi tìm hiểu PHP là gì, điều khiến nhiều người yêu thích đó

ở loại ngôn ngữ lập trình này đó chính là nó có thể được sử dụng trên nhiều

hệ điều hành khác nhau Thậm chí, trong nhiều trường hợp, các lập trìnhviên còn có thể đem mã PHP này để chạy trực tiếp trên các hệ điều hànhkhác mà hoàn toàn không phải sửa đổi lại mã

Lợi thế tiếp theo của PHP đó là mang tính cộng đồng Bởi PHP đượcphát triển và tối ưu liên tục từ các nhà phát triển lập trình trên toàn thế giới.Nhờ đó, PHP ngày càng trở nên thân thiện hơn với người dùng và từng bướchoàn thiện hơn nữa[3]

1.2 HTML,CSS và Javascript

- HTML

HTML là chữ viết tắt của Hypertext Markup Language Nó giúp

người dùng tạo và cấu trúc các thành phần trong trang web hoặc ứng dụng,phân chia các đoạn văn, heading, links, blockquotes, vâng vâng

HTML không phải là ngôn ngữ lập trình, đồng nghĩa với việc nókhông thể tạo ra các chức năng “động” được Nó chỉ giống như MicrosoftWord, dùng để bố cục và định dạng trang web

Trang 24

Khi làm việc với HTML, chúng ta sẽ sử dụng cấu trúc code đơn giản(tags và attributes) để đánh dấu lên trang web Ví dụ, chúng ta có thể tạo mộtđoạn văn bằng cách đặt văn bản vào trong cặp tag mở và đóng văn

bản <p> và </p>

Tổng quan, HTML là ngôn ngữ markup, nó rất trực tiếp dễ hiểu, dễhọc, và tất cả mọi người mới đều có thể bắt đầu học nó để xây dựngwebsite[5]

- CSS

CSS (là chữ viết tắt của Cascading Style Sheets) là một loại ngôn ngữlập trình được sử dụng phổ biến để có thể tìm và thực hiện định dạng lại chonhững phần tử được tạo ra bởi các ngôn ngữ đánh dấu

Bạn có thể hiểu đơn giản như sau: Trong một website, nếu HTML giữvai trò trong việc định dạng các ngôn ngữ phần tử nằm trên website với cácchức năng như: tạo ra các đoạn văn bản, các tiêu đề, bảng,…thì CSS sẽ giúpcho website có thêm một chút mới mẻ, phong cách và chuyên nghiệp hơnvào những phần tử HTML được tạo ra đó Các tùy chỉnh có thể gồm: màusắc trang, cách đổi màu chữ, cách thay đổi cấu trúc,…

CSS được đề xuất ra đời bởi lập trình viên Harkon Wium Lie và đượcsản xuất chính thức vào năm 1996[5]

Theo các chuyên gia, CSS ra đời với lý do như sau: Bởi vì hầu hếtcác ngôn ngữ được đánh dấu như: HTML hầu như không được thiết kế gắntag để có thể định dạng trang web mà bạn chỉ có thể sử dụng nó để đánh dấulên hệ thống website

- Javascript

Javascript là một ngôn ngữ lập trình website, được tích hợp và nhúng

trong HTML và giúp cho website trở nên sống động hơn Đây là dạng ngônngữ theo kịch bản, được hình thành dựa trên chính đối tượng phát triển cósẵn hoặc đơn giản là tự định nghĩa ra Javascript cho phép bạn kiểm soát các

Trang 25

hành vi của trang web tốt hơn so với việc chỉ sử dụng mỗi HTML Có thể kểđến một vài ứng dụng thực tiễn cực kỳ quen thuộc của Javascript nhưslideshow, pop-up quảng cáo hay tính năng autocomplete của Google,…chúng đều được viết bằng ngôn ngữ Javascript.

Javascript được biết đến lần đầu tiên vào tháng 9 năm 1995, được tạovỏn vẹn trong vòng 10 ngày bởi Brendan Eich – một nhân viên Netscape.Thực chất tên gọi đầu tiên người ta dùng cho ngôn ngữ lập trình này làMocha, sau đó đổi thành Mona và tiếp tục biến đổi thành Livescript trướckhi trở thành ngôn ngữ lập trình Javascript phổ biến như bây giờ Phiên bảnđầu tiên của ngôn ngữ lập trình này bị Netspace giới hạn độc quyền và chỉ cócác tính năng hạn chế Tuy nhiên nó vẫn tiếp tục phát triển theo thời gian vàhoàn thiện đến thời điểm hiện tại nhờ sự làm việc liên tục của cộng đồng cáclập trình viên Javascript được biết đến lần đầu tiên vào tháng 9 năm 1995,được tạo vỏn vẹn trong vòng 10 ngày bởi Brendan Eich – một nhân viênNetscape Thực chất tên gọi đầu tiên người ta dùng cho ngôn ngữ lập trìnhnày là Mocha, sau đó đổi thành Mona và tiếp tục biến đổi thành Livescripttrước khi trở thành ngôn ngữ lập trình Javascript phổ biến như bây giờ.Phiên bản đầu tiên của ngôn ngữ lập trình này bị Netspace giới hạn độcquyền và chỉ có các tính năng hạn chế Tuy nhiên nó vẫn tiếp tục phát triểntheo thời gian và hoàn thiện đến thời điểm hiện tại nhờ sự làm việc liên tụccủa cộng đồng các lập trình viên[5]

2 Hệ quản trị CSDL phpMyAdmin

PHPMyAdmin - phần mềm mã nguồn mở mở viết theo ngôn ngữ lậptrình PHP, hỗ trợ hệ cơ sở quản trị dữ liệu MySQL Quá trình hỗ trợ để thựchiện thông qua giao diện web

Tính đến thời điểm hiện tại, PHPMyAdmin đã thu hút cả triệu lượt sửdụng Phần mềm này hỗ trợ hầu hết các hệ điều hành phổ biến và vẫn khôngngừng được cải thiện

Trang 26

- Một vài tính năng chính của PHPMyAdmin

+ Chức năng quản lý người dùng: Bổ sung, chỉnh sửa, loại bỏ, thiếtlập phân quyền

+ Hỗ trợ quản lý cơ sở dữ liệu: Khởi tạo, chỉnh sửa, bổ sung các thuộctính (bảng, tường, tra cứu khối lượng, )

+ Xuất và nhập dữ liệu: PHPMyAdmin cho phép người dùng xuất vànhập dữ liệu thông qua nhiều định dạng như CSV, XML, SQL

+ Truy vấn MySQL: Phần mềm cho phép giám sát chặt chẽ quá trìnhtheo dõi

+ Sao lưu và khôi phục: Hỗ trợ thao tác thủ công

+ Ngoài hệ thống chức năng đa dạng, PHPMyAdmin còn được tíchhợp chức năng quản trị DBMS MySQL Nhằm hỗ trợ xử lý những tìnhhuống bất ngờ[5]

Ưu và nhược điểm của PHPMyAdmin

Ưu điểm

- PHPMyAdmin tương thích cao với nhiều hệ điều hành

- PHPMyAdmin có thể xem như công cụ lý tưởng để thiết lập, quản lý

hệ cơ sở dữ liệu Phần mềm lời theo nhiều đặc quyền cho người dùng,cho phép thực hiện truy vấn SQL, tích hợp đầy đủ chức năng quản trị

- Với PHPMyAdmin, bạn có thể đồng thời làm việc với đối tượng và xử

lý tình huống bất ngờ Ví dụ như với SQL injection, lỗi từ phía ngườidùng và tình huống database dễ dàng xử lý cùng lúc

Nhược điểm

- Hạn chế lớn nhất của phần mềm PHPMyAdmin làm ở khả năng sao

lưu tự động cài đặt trước và phương thức lưu trữ phương tiện truyềnthông Cụ thể, chức năng sao lưu tự động cài đặt trước hoạt động chưathực sự ổn định

Trang 27

- Phần mềm PHPMyAdmin hiện vẫn chỉ hỗ trợ sao lưu vào Local Drive

tích hợp sẵn trong hệ thống Lưu trữ của hội thoại Save as hoạt độngchưa được mượt

Trang 28

CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG

1 Các yêu cầu đặt ra cho hệ thống

Hệ thống là một website thương mại điện tử nên lợi nhuận và doanhthu đều từ phía của khách hàng , vì vậy các yêu cầu và nhu cầu cần đặt ra làphải phù hợp với yêu cầu của khách hàng

Yêu cầu về giao diện của website : Công nghệ thông tin phát triển vàđược ứng dụng rộng rãi trong cuộc sống hiện nay Khi mà internet là nơi lýtưởng để người dùng tìm kiếm thông tin, mua sắm hàng hóa dịch vụ thìwebsite được xem là công cụ hỗ trợ đắc lực nhất cho hoạt động kinh doanh,marketing online của doanh nghiệp Website giờ đây không chỉ là nơi đểcung cấp thông tin mà đây còn là nơi giúp doanh nghiệp tương tác hiệu quảvới khách hàng, từ đó thuyết phục khách hàng mua sản phẩm, dịch vụ của

mình Vì vậy, việc thiết kế web đẹp, thu hút người xem và mang lại nhiều

tiện ích cho người dùng là điều mà doanh nghiệp luôn quan tâm, chú ý

Giao diện web là nơi khách hàng nhìn thấy đầu tiên khi ghé thăm vàowebsite của bạn Vì vậy, việc tạo ấn tượng tốt với khách hàng ngay từ cáinhìn đầu tiên thì hình thức web là điều cần quan tâm

3 màu để đem đến cảm giác thoải mái cho người dùng

VỀ BỐ CỤC

Trang 29

Một website đẹp, chuyên nghiệp, chất lượng tốt đòi hỏi bố cụcwebsite phải rõ ràng, khoa học, dễ dàng sử dụng Điều này sẽ giúp doanhnghiệp được khách hàng đánh giá cao, để lại ấn tượng tốt trong lòng kháchhàng.

VỀ HÌNH ẢNH

Việc sử dụng hình ảnh phù hợp, chất lượng sẽ mang lại hiệu quả caocho bạn Bạn nên lựa chọn những hình ảnh chất lượng, đẹp, không quá lớncũng không quá nhỏ Hình ảnh liên quan đến nội dung bài viết, sản phẩm đểgiúp khách hàng hiểu được phần nào bài viết khi nhìn vào hình ảnh trênwebsite của bạn

VỀ FONT CHỮ

Bạn không nên lựa chọn những font chữ khác lạ khiến người xem gặpkhó khăn trong việc tìm kiếm thông tin, nắm bắt được thông điệp mà doanhnghiệp muốn gửi đến khách hàng Vì vậy, tốt nhất bạn nên lựa chọn font chữphổ thông và in đậm những từ khóa, nội dung quan trọng

2 Xác định các tác nhân (Actors)

Người dùng chưa đăng nhập (Guest), Người đã đăng nhập (User) vàngười quản trị (Admin) và còn có hệ thống tác nhân phụ là hệ thống thanhtoán điện tử (Momo)

Guest :là những người chưa có tài khoản đăng nhập vào website.

Nhưng vẫn có thể vào website xem tìm kiếm sản phẩm , bài viết ,nội dungbình luận của những người đã có tài khoản

User: là những người đã có tài khoản đăng nhập vào hệ thống User

theo tiếng việt có nghĩ là người dùng, nhưng trong công nghệ thông tin họchỉ hiểu là user, mỗi máy tính chúng ta có thể tạo 1 hoặc nhiều người dùng

để bảo vệ máy tính, có nghĩa là khi tạo thành công một user thì khi truy cậpvào máy tính chúng ta sẽ cần phải có mật khẩu của user đó Mục đích chínhcủa hệ thống là để người dùng sử dụng được nhiều tính năng như là : quản lí

Trang 30

được tài khoản mật khẩu riêng tư của mình , mua sản phẩm , đánh giá hoặcbình luận về một sản phẩm nào đó trong hệ thống.

Admin: là một bộ phận quan trong trong một hệ thống website Là

một người quản lí , đ1iều hành và kiểm tra tất cả các hoạt động của hệ thống.Tác nhân này có thể thực hiện và quản lí mọi chức năng trong hệ thống nhưquản lí kho, quản lí sản phẩm , quản lí các bình luận và phản hồi, thống kêdoanh thu và quản lí tất cả các tài khoản của các người dùng

3 Xác định các trường hợp sử dụng (Use Case)

- Guest: đăng ký, tìm kiếm, xem sản phẩm.

- User: đăng nhập, đăng ký, tìm kiếm, xem sản phẩm, quản lý giỏ hàng,

Sau khi Nhập thông tin tài khoản, mật khẩu, địa chỉ, số điện thoại, bộ

xử lí sẽ kiểm tra thông tin rồi gửi lên database, database sẽ kiểm tra dữ liệu,lưu lại và trả về thông báo nếu sai thì sẽ thông báo” Tài khoản hoặc Email đãđược sử dụng” và ngược lại sẽ hiển thị “Đăng kí thành công”

Trang 31

UseCase Đăng ký

Điều kiện trước Khách hàng chưa có tài khoản

Điều kiện sau Khách hang đăng ký thành công

Mô tả Cho phép khách hàng đăng ký tài khoản website để

thực hiện các chức năng riêng biệt

Bảng 1: Bảng đặc tả UseCase đăng ký

Các sự kiện chính

Hành động của tác nhân Hành động của hệ thống

1.Tác nhân tiến hành mở giao

diện đăng ký

1.1 Điền các trường thông tin

vào ô( tên, số điện thoại email,

quê quán , năm sinh)

1.2 Tiến hành kiểm tra dữ liệu và xác minh thông tin

1.3 Thông tin chính xác sẽ cho tác nhân đăng ký

Bảng 2: Bảng sự kiện chính UseCase đăng ký

Các sự kiện phụ

Hành động của tác nhân Hành động của hệ thống

2 Nhập thông tin tên hoặc số

điện thoại bị trùng

2.1 Hệ thống sẽ thông báo lỗi đăng ký thất bại

và yêu cầu tác nhân đăng ký lại thông tin hoặcchọn thoát

Bảng 3: Bảng sự kiện phụ UseCase đăng ký

Trang 32

Biểu đồ Usecase Đăng ký:

Hình 1.Biểu đồ UseCase đăng kí

Tác nhân Người quản lý, khách hàng

Điều kiện trước Khách hàng đã đăng ký, người quản lý đã có

tài khoảnĐiều kiện sau Khách hàng và người quản lý đăng nhập thành

Trang 33

Mô tả Cho phép người quản lý, khách hàng đăng

nhập vào website để thực hiện các chức năngriêng biệt

Bảng 4: Bảng đặc tả UseCase đăng nhập

Các sự kiện chính

Hành động của tác nhân Hành động của hệ thống

1.Tác nhân tiến hành mở giao

Hành động của tác nhân Hành động của hệ thống

2 Nhập thông tin tài

khoản và mật khẩu không

chính xác

2.1 Hệ thống sẽ thông báo lỗi đăngnhập thất bại và yêu cầu tác nhân cungcấp lại thông tin hoặc chọn thoát

Bảng 6: Bảng sự kiện phụ UseCase đăng nhập

Trang 34

Biểu đồ UseCase Đăng nhập

Hình 2.Biểu đồ UseCase đăng nhập

4.3 Chức năng tìm kiếm

Mô tả:

Chức năng tìm kiếm sản phẩm: Giúp người quản lí có thể dễ dàng tìmkiếm được sản phẩm đã được đăng lên cũng như giúp các bộ phận khácthông kê được sản phẩm mình đang bán trên website

Sau khi bấm vào chức năng tìm kiếm, bộ xử lý sẽ kiểm tra và gửi lêndatabase, database sẽ kiểm tra thông tin đã được lưu trước đó nếu có sẽ lấy

ra để gửi về cho người tìm kiếm, nếu không database sẽ gửi lại thông báokhông có sản phẩm tìm kiếm

Trang 35

Điều kiện sau Hiển thị sản phẩm cần tìm của khách

Mô tả Cho phép người dùng tìm kiếm sản phẩm theo tên

để thuận tiện việc tìm sản phẩm

vào thanh tìm kiếm

1.2 Tiến hành kiểm tra dữ liệu và lọc

dữ liệu1.3 Thông tin chính xác sẽ đưa ra mànhình

Bảng 8:Bảng sự kiện chính UseCase tìm kiếm

Các sự kiện phụ

Hành động của tác nhân Hành động của hệ thống

2 Nhập tên sản phẩm sai 2.1 Hệ thống sẽ không hiển thị ra sản

phẩm nào

Bảng 9:Bảng sự kiện phụ UseCase tìm kiếm

Trang 36

Biểu đồ UseCase Tìm kiếm

Hình 3 Biểu đồ UseCase tìm kiếm sản phẩm

4.4 Chức năng quản lý giỏ hàng

Mô tả:

Sau khi chọn xem chi tiết giỏ hàng, bộ xử lí sẽ kiểm tra thông tin rồigửi lên database, database sẽ kiểm tra dữ liệu, database sẽ kiểm tra dữ liệu,rồi lấy dữ liệu đã được lưu lại trên database sau đó sẽ hiển thị kết quả ngườidùng cần tìm

Chức năng thêm vào giỏ hàng: Giúp khách hàng có thể lưu lại nhưngsản phẩm mình cần hoặc muốn mua

Ngày đăng: 12/04/2024, 22:08

w