Tải bản đầy đủ (.docx) (73 trang)

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.13 MB, 73 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC SƯ PHẠMKHOA TIN HỌC</b>

<b>BÁO CÁO THỰC TẬP TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN</b>

<b>ĐỀ TÀI</b>

<b>NGHIÊN CỨU XÂY DỰNG </b>

<b>WEBSITE BÁN TRÁI CÂY TRỰC TUYẾN</b>

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

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

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

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

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>LỜI CAM ĐOAN</b>

Em tên là Trần Đình Vỹ - 20CNTT1. Em xin cam đoan đây là đề tài do em thự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ốt nghiệp này là trung thực và mọi tham khảo đều được trích dẫn, chỉ rõ nguồn tham khảo theo đúng quy định.

Sinh viên thực hiện

<b>Trần Đình Vỹ</b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

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

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

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

<b>4. Phương pháp nghiên cứu...12</b>

<b>5. Ý nghĩa của đề tài...12</b>

<b>CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG...23</b>

<b>1. Các yêu cầu đặt ra cho hệ thống...23</b>

<b>2. Xác định các tác nhân (Actors)...24</b>

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

<b>4. Các chức năng của hệ thống...25</b>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

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

<b>5. Thiết kê cơ sở dữ liệu...43</b>

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

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="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

<b>7. Biểu đồ tuần tự...53</b>

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

<b>CHƯƠNG 3. XÂY DỰNG CHƯƠNG TRÌNH...58</b>

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

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

2.1 Giao diện trang chủ admin...61

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

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="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

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

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>DANH MỤC BẢNG BIỂU</b>

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

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="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

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>MỤC LỤC HÌNH ẢNH</b>

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

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="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

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>LỜI NÓI ĐẦU</b>

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áo thực tập tốt nghiệp. Em đã nhận được sự giúp đỡ, hướng dẫn, giảng dạy nhiệt tình của q thầy,cơ khoa Cơng Nghệ Thơng Tin. Em xin chân thành cả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ập tố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 em hiể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ên trong 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, ni dưỡng, khích lệ, động viên cũng như tạo điều kiện tốt nhất để em được vững bước tiếp tục học tập. Cảm ơn những người bạn, anh chị em đã ln đồng hành và khích lệ giúp đỡ em trong xuất quá trình học tập.

Tuy nhiên trong học tập, cũng như trong q trình làm báo cáo khơng thể 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 hồn thiện hơn cũng như có thêm nhiều kinh nghiệm cho công việc sau này.

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

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>MỞ ĐẦU1. Lý do chọn đề tài</b>

Ngày nay, chúng ta đang sống trong một xã hội hiện đại với công nghệ phát triển như vũ bão thì việc đưa nó vào trong đời sống khơng cịn q xa lạ.

Ứng dụng cơng nghệ thơng tin và việc tin học hóa được xem là một trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức cũng như của các cơng ty. Nó đóng vai trị hết sức quan trọng có thể tạo ra những bước đột phá mạnh mẽ. Là một phần của công nghệ thông tin, cơng nghệ web đang có được sự phát triển mạnh mẽ và phổ biến rất nhanh bởi những lợi ích mà nó mang lại cho cộng đồng là rất lớn.

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 ứng dụ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ác ngôn ngữ lập trình, cùng với sự ra đời của các framework đã thúc đẩy em chọn đề tài “NGHIÊN CỨU XÂY DỰNG WEBSITE BÁN TRÁI TRỰC TUYẾN” để thực hiện đề tài nhằm đáp ứng theo chương trình đào tạo đồng thời mong muốn ứng dụng cơng nghệ đó vào việc tìm hiểu và đưa ra một giả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ến cho các cửa hàng. Với đề tài này, website sẽ cho phép người sử dụng thực hiện một cách nhanh chóng, chính xác việc tìm kiếm thơng tin, các sản phẩm, giá cả của chúng và tiến hành việc đặt mua trực tuyến, … với giao diệ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êu dùng.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>2. Mục tiêu đề tài</b>

Mục tiêu của đề tài là tìm ra giải pháp hiệu quả để giải quyết công việ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ài gồm:

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

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

Đề xuất cách quản lý thông tin sản phẩm, kho hàng và đơn hàng bằng cá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.

<b>3. Đối tượng và phạm vi nghiên cứu3.1. Đối tượng nghiên cứu</b>

<b>- 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ỹ</b>

thuật đa dạng.

<b>Quản trị viên Website:</b>

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

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

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

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

<b>3.2 Phạm vi nghiên cứu</b>

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

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

<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</b>

<b>- 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.</b>

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

<b>- 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</b>

- 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 nhanh trự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.

<b>5. Ý nghĩa của đề tài5.1 Ý nghĩa khoa học</b>

Đề tài đang hướng vào ứng dụng công nghệ thông tin trong lĩnh lĩnh vự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

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="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 đầu củ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ới dựa trên đại số Grassmann trong việc trích chọn đặc trưng cho bài toán nhận diện cảm xúc con người thơng qua tín hiệu điện não đồ.

<b>5.2 Ý nghĩa thực tiễn</b>

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ông minh, đồ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ết quả sẽ được phát hành dưới dạng mã nguồn mở. Vì đề tài nghiên cứu dựa và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à đánh giá hoạt động của não.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>CHƯƠNG 1: NGHIÊN CỨU TỔNG QUAN1. Tìm hiểu về các ngơn ngữ lập trình hỗ trợ</b>

<b>1.1. Ngơn ngữ lập trình PHPa. Giới thiệu</b>

PHP (PHP Hypertext Preprocessor) là ngôn ngữ Server-side script được thực thi trong WebServer. Ngôn ngữ PHP cung cấp cho người dùng cơ sở hạ tầng chặt chẽ bao gồm giao thức, API, cơ sở dữ liệu,… Ngơn ngữ này được sử dụng để lập trình website.

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>b. Lịch sử hình thành và phát triển</b>

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ồ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ú

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

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 [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ũ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 hồn tồ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ận 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ó. Ngồ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. Hồn tồ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 qn khác.

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

Ngơn ngữ hồn tồ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[1].

<b>c. PHP 4 </b>

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ả[1].

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, 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[1].

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="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ê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[1].

<b>d. PHP 5</b>

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 nă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.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="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ự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[1].

<b>e. PHP 6</b>

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; hỗ trợ Unicode; sử dụng PDO là 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... 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].

<b>f. PHP 7</b>

Với việc sử dụng bộ nhân Zend Engine mới PHPNG cho tốc độ nhanh gấ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ính năng mới giúp cho PHP trở nên mạnh mẽ hơn. Những tính năng mới quan trọ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 (??, <=>,...)

<b>Ưu điểm của PHP</b>

PHP có tốc độ hoạt động rất nhanh và mang lại hiệu quả cao. Điều nà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ợ đến hàng triệu hệ quản trị cơ sở dữ liệu khác nhau của PHP hiện nay vô cùng

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

tuyệt vời. Đây cũng là lý do vì sao ngơn ngữ lập trình PHP được u thích hà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 đã được xâ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ên web. 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ới cookie,….

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 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ình viên cịn có thể đem mã PHP này để chạy trực tiếp trên các hệ điều hành khác mà hồn tồ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 được phá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 tồ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ước hoàn thiện hơn nữa[3].

<b>1.2 HTML,CSS và Javascript</b>

<i><b>- HTML</b></i>

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

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ư Microsoft Word, dùng để bố cục và định dạng trang web.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="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

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

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ựng website[5].

<i><b>- CSS</b></i>

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 cho nhữ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ác chứ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úp cho website có thêm một chút mới mẻ, phong cách và chuyên nghiệp hơn vào những phần tử HTML được tạo ra đó. Các tùy chỉnh có thể gồm: màu sắ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à được sả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ết các ngơn ngữ được đánh dấu như: HTML hầu như không được thiết kế gắn tag để có thể định dạng trang web mà bạn chỉ có thể sử dụng nó để đánh dấu lên hệ thống website.

<i><b>- Javascript</b></i>

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

trong HTML và giúp cho website trở nên sống động hơn. Đây là dạng ngơn ngữ 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

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="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ạo vỏ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ướ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 độ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ác lậ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ê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ướ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 độ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ác lập trình viên[5].

<b>2 .Hệ quản trị CSDL phpMyAdmin</b>

PHPMyAdmin - phần mềm mã nguồn mở mở viết theo ngôn ngữ lập trình PHP, hỗ trợ hệ cơ sở quản trị dữ liệu MySQL. Quá trình hỗ trợ để thực hiệ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ông ngừng được cải thiện.

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

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

+ Chức năng quản lý người dùng: Bổ sung, chỉnh sửa, loại bỏ, thiết lậ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ộc tí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ình theo dõi.

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

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

<b>Ưu và nhược điểm của PHPMyAdmin</b>

 <b>Ưu điểm </b>

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

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

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ị.

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

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

 <b>Nhược điểm </b>

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

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

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

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

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

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG1. Các yêu cầu đặt ra cho hệ thống</b>

Hệ thống là một website thương mại điện tử nên lợi nhuận và doanh thu đề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

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

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ào website 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ái nhìn đầu tiên thì hình thức web là điều cần quan tâm.

<b>VỀ MÀU SẮC</b>

Website ở nước ngoài thường có màu sắc đơn giản, hài hịa, tạo cảm giác thoải mái của người xem. Trong khi ở Việt Nam, có rất nhiều website có màu sắc khá lịe loẹt, sử dụng nhiều gam màu sáng tối gây khó chịu cho người xem và họ sẽ rời bỏ website đó để đến với website của đối thủ. Vì vậy, bạn cần quan tâm đến màu sắc của trang web. Nên lựa chọn những màu sắc hịa, tương thích với màu sắc của logo, sản phẩm và không sử dụng quá 3 màu để đem đến cảm giác thoải mái cho người dùng.

<b>VỀ BỐ CỤC</b>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

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

<b>VỀ HÌNH ẢNH</b>

Việc sử dụng hình ảnh phù hợp, chất lượng sẽ mang lại hiệu quả cao cho bạn. Bạn nên lựa chọn những hình ảnh chất lượng, đẹp, khơng q lớn cũng khơng q 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ên website của bạn.

<b>VỀ FONT CHỮ</b>

Bạn không nên lựa chọn những font chữ khác lạ khiến người xem gặp khó khăn trong việc tìm kiếm thơng tin, nắm bắt được thông điệp mà doanh nghiệ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.

<b>2. Xác định các tác nhân (Actors)</b>

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 thanh tốn điện tử (Momo).

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

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

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

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ập và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ính của hệ thống là để người dùng sử dụng được nhiều tính năng như là : quản lí

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="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ặc bình luận về một sản phẩm nào đó trong hệ thống.

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

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

<b>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.</b>

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

Chức năng đăng kí tài khoản: Giúp khách hàng có một tài khoản để thuận tiên trong việc đặt hàng, lưu lại những sản phẩm mình có ý định mua vào giỏ hàng và có thể lướt xem giỏ hàng của mình đã lưu

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”

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="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.

<i>Bảng 1: Bảng đặc tả UseCase đăng ký</i>

<b>Các sự kiện chính</b>

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

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ặc chọn thốt

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

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b>Biểu đồ Usecase Đăng ký:</b>

<i>Hình 1.Biểu đồ UseCase đăng kí</i>

<b>4.2 Chức năng đăng nhập</b>

Mơ tả:

Sản phẩm được đăng trên website, cũng như kiểm tra giỏ hàng hay xóa giỏ hàng được thuận tiện hơn

Sau khi Nhập thông tin tài khoản và mật khẩu, 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 mật khẩu và tài khoản đúng thì sẽ trả về thông báo “Đăng nhập thành công”, nếu không đúng sẽ thông báo “ Tài khoản hoặc mật khẩu không chính xác”.

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

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="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ăng riêng biệt.

<i>Bảng 4: Bảng đặc tả UseCase đăng nhập</i>

<b>Các sự kiện chính</b>

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

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ẽ đưa tác nhân truy cập hệ thống

<i>Bảng 5: Bảng sự kiện chính UseCase đăng nhập</i>

<b>Các sự kiện phụ</b>

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 đăng nhập thất bại và yêu cầu tác nhân cung cấp lại thông tin hoặc chọn thoát

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

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<b>Biểu đồ UseCase Đăng nhập</b>

<i>Hình 2.Biểu đồ UseCase đăng nhập</i>

<b>4.3 Chức năng tìm kiếm</b>

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ìm kiếm được sản phẩm đã được đăng lên cũng như giúp các bộ phận khác thô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ên database, 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áo khơng có sản phẩm tìm kiếm

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="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

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

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

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>Biểu đồ UseCase Tìm kiếm</b>

<i>Hình 3. Biểu đồ UseCase tìm kiếm sản phẩm</i>

<b>4.4 Chức năng quản lý giỏ hàng</b>

Mô tả:

Sau khi chọn xem chi tiết giỏ hàng, 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, 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ười dù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ưng sản phẩm mình cần hoặc muốn mua.

</div>

×