A. MỞ ĐẦU 1.1 . Lý do chọn đề tài Ngày nay, Thương mại điện tử đã trở thành một công cụ phổ biến không những ở trên thế giới mà còn ở Việt Nam. Ở Việt Nam điển hình có một số trang như: https:shopee.vn,https:www.dienmayxanh.com,https:www.sendo.vn,https:www.thegioididong.com đang có tình hình phát triển rất tốt, Tuy nhiên, để hình thành lên một trang Thương mại điện tử khá nối tiếng đó là cả một quá trình và mất rất nhiều thời gian , tiền bạc, công sức. Với sự phát triển mạnh mẽ của công nghệ thông tin và những ứng dụng của nó trong đời sống. Máy tính điện tử không còn là một thứ phươnng tiện lạ lẫm đối với mọi người mà nó dần trở thành một công cụ làm việc và giải trí thông dụng và hữu ích của chúng ta, không chỉ ở công sở mà còn ngay cả trong gia đình. Trong nền kinh tế hiện nay, với xu thế toàn cầu hoá nền kinh tế thế giới, mọi mặt của đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con người ngày càng tăng cả về số lượng và chất lượng. Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet. Thông qua các sản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thương mại điện tử. Với những thao tác đơn giản trên máy có nối mạng Internet chúng ta sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian. Bạn chỉ cần vào các trang dịch vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần. Các nhà dịch vụ sẽ mang đến tận nhà cho bạn. Để tiếp cận và góp phần đẩy mạnh sự phổ biến của thương mại điện tử ở Việt Nam, em đã tìm hiểu đề tài, “Thiết kế và Xây dựng Website bán điện thoại di đông và laptop” 1.2. Mục tiêu của đề tài Nhằm tổng hợp những kiến thức đã học trong suốt quá trình học tập tại trường cũng như những kiến thức mà em tìm hiểu được trên internet và trong sách báo để: + Tìm hiểu rõ hơn, sâu hơn và làm rõ hơn các khái niệm về TMĐT. + Khả năng phân tích cho một hệ thống. + Tiếp cận công cụ lập trình. + Kỹ thuật lập trình trên internet. + Thời gian triển khai dự án lên internet nhanh chóng và chi phi thấp. + Chi phí duy trì và bảo trì hệ thống thấp. + An toàn, ổn đinh và bảo mật dữ liệu. 1.3. Tính mới của đề tài Sử dụng công nghệ Ajax trong cập nhật giỏ hàng. 1.4. Đối tượng và phạm vi nghiên cứu Đối tượng: + Ngôn ngữ PHP, hệ quản trị cơ sở dữ liệu MySQL, Jquery, CSS, HTML, Ajax, bootstrap Phạm vi: + Các mặt hàng thương mại điện tử cụ thể là điện thoại di động và latop 1.5 Phương pháp nghiên cứu Phương pháp nghiên cứu thực tiễn Nghiên cứu tham khảo tài liệu trên internet và một số website thương mại
Trang 1MỤC LỤC
LỜI CẢM ƠN 1
A MỞ ĐẦU 2
1.1 Lý do chọn đề tài 2
1.2 Mục tiêu của đề tài 2
1.3 Tính mới của đề tài 3
1.4 Đối tượng và phạm vi nghiên cứu 3
1.5 Phương pháp nghiên cứu 3
B NỘI DUNG NGHIÊN CỨU 4
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 4
1.1 Tìm hiểu về thương mại điện tử 4
1.1.1 Thương mại điện tử là gì ? 4
1.1.2 Lợi ích của thương mại điện tử 4
1.1.3 Ứng dụng của thương mại điện tử 5
1.2 Giới thiệu về ngôn ngữ sử dụng 5
1.2.1 Ngôn ngữ HTML 5
1.2.2 Ngôn ngữ css 6
1.2.3 Ngôn ngữ JQUERY 7
1.2.4 Công nghệ Ajax 7
1.2.5 Ngôn ngữ PHP 8
1.2.6 Bootstrap 9
1.3 Tổng quan về hệ quản trị cơ sở dữ liệu MySQL 10
1.3.1 Một số khái niệm về hệ quản trị cơ sở dữ liệu MySQL 10
1.3.2 Các thành phần của MySQL 11
1.4 Công cụ sử dụng 11
1.4.1 Công cụ phát triển web Visual Studio Code 11
1.4.2 Chương trình tạo máy chủ web Xampp 12
1.4.3 Công cụ quản trị cơ sở dữ liệu phpMyAdmin 12
1.4.4 Trình duyệt coccoc 13
1.5 Phương pháp tiếp cận hướng đối tượng 14
1.5.1 Tổng quan về UML 14
1.5.2 Biểu đồ ca sử dụng use case 15
Trang 2CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 18
2.1 Khảo sát hệ thống 18
2.1.1 Phân tích yêu cầu người dùng 18
2.1.2 Yêu cầu của người quản trị 19
2.1.3 Yêu cầu phi chức năng 22
2.2.2 Xác định các Actor và vai trò 25
2.2.3 Biểu đồ Use case hệ thống 26
2.2.4 Đặc tả các use case 26
2.2.5 Biểu đồ lớp 30
2.2.6 Biểu đồ trạng thái 31
2.2.7 Biểu đồ tuần tự 33
2.2.8 Biểu đồ hoạt động 38
2.3 Thiết kế hệ thống 41
2.3.1 Thiết kế cơ sở dữ liệu 41
2.3.2 Mô tả cơ sở dữ liệu trên phpMyAdmin 46
CHƯƠNG 3: TRIỂN KHAI XâY DỰNG WEBSITE 49
3.1 Giao diện người dùng 49
3.1.1 Giao diện trang chủ 49
3.1.2 Giao diện trang danh mục sản phẩm 50
3.1.3 Giao diện trang sản phẩm 51
3.1.4 Giao diện trang chi tiết sản phẩm 51
3.1.5.Giao diện trang blog 53
3.1.6 Giao diện trang giới thiệu 54
3.1.7 Giao diện trang liên hệ 54
3.1.8 Giao diện trang giỏ hàng 55
3.1.9 Giao diện trang thanh toán 56
3.1.10 Giao diện trang đặt hàng thành công và nhận mail tự động từ hệ thống 56
3.2 Giao diện admin 57
3.2.1 Giao diện trang đăng nhập 57
3.2.2 Giao diện trang quản lý thành viên 58
3.2.3 Giao diện trang quản lý bài viết 58
3.2.4 Giao diện trang blog tin tức 59
Trang 33.2.5 Giao diện trang quản lý danh mục sản phẩm 60
3.2.6 Giao diện trang quản lý sản phẩm 61
3.2.7 Giao diện trang quản lý danh sách khách hàng đặt hàng và đơn hàng 64
3.2.8 Giao diện trang thống kê 66
C KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 67
1 Kết luận 67
2 Hướng phát triển 67
D TÀI LIỆU THAM KHẢO 68
Trang 4LỜI CẢM ƠN
Qua bốn năm học tập tại Trường Đại Quảng Nam đến nay em đã hoàn thànhkhóa học Với lòng biết ơn sâu sắc em xin chân thành cảm ơn sự giúp đỡ tận tình củacác thầy cô khoa Công Nghệ Thông Tin đã giảng dạy và hướng dẫn em trong suốt quátrình học tập tại nhà trường
Để hoàn thành báo cáo này, em xin tỏ lòng biết ơn đến cô Nguyễn Thị MinhChâu đã tận tình hướng dẫn trong suốt quá trình thực hiện
Em chân thành cảm ơn quý thầy, cô trong khoa Công Nghệ Thông Tin, TrườngĐại Học Quảng Nam đã tận tình truyền đạt kiến thức trong những năm em học tập.Với vốn kiến thức được tiếp thu trong quá trình học không chỉ là nền tảng cho quátrình nghiên cứu đề tài mà còn là hành trang quý báu để em bước vào đời một cáchvững chắc và tự tin
Em chân thành cảm ơn Công Ty phần mềm FPT Software Đà Nẵng đã chophép và tạo điều kiện thuận lợi để em thực tập tại cơ quan
Vì thời gian có hạn và kiến thức của em còn nhiều hạn chế nên báo cáo này của
em chắc chắn không tránh khỏi thiếu sót, em rất mong nhận được sự giúp đỡ của thầy
cô, cùng toàn thể các bạn trong lớp để hoàn thành bài báo cáo này
Cuối cùng em kính chúc quý thầy, cô dồi dào sức khỏe và thành công trong sựnghiệp cao quý
Quảng Nam, ngày 09 tháng 05 năm 2020
Sinh viên thực hiệnNguyễn Văn Đợi
Trang 5A MỞ ĐẦU 1.1 Lý do chọn đề tài
Ngày nay, Thương mại điện tử đã trở thành một công cụ phổ biến không những ởtrên thế giới mà còn ở Việt Nam Ở Việt Nam điển hình có một số trang như:https://shopee.vn/,https://www.dienmayxanh.com/,https://www.sendo.vn/,https://www.thegioididong.com/ đang có tình hình phát triển rất tốt, Tuy nhiên, để hình thànhlên một trang Thương mại điện tử khá nối tiếng đó là cả một quá trình và mất rất nhiềuthời gian , tiền bạc, công sức
Với sự phát triển mạnh mẽ của công nghệ thông tin và những ứng dụng của nótrong đời sống Máy tính điện tử không còn là một thứ phươnng tiện lạ lẫm đối vớimọi người mà nó dần trở thành một công cụ làm việc và giải trí thông dụng và hữu íchcủa chúng ta, không chỉ ở công sở mà còn ngay cả trong gia đình
Trong nền kinh tế hiện nay, với xu thế toàn cầu hoá nền kinh tế thế giới, mọi mặtcủa đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoácủa con người ngày càng tăng cả về số lượng và chất lượng Hiện nay các công ty tinhọc hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sảnphẩm nhằm cho phép tiến hành thương mại hóa trên Internet Thông qua các sản phẩm
và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thươngmại điện tử Với những thao tác đơn giản trên máy có nối mạng Internet chúng ta sẽ cótận tay những gì mình cần mà không phải mất nhiều thời gian Bạn chỉ cần vào cáctrang dịch vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần.Các nhà dịch vụ sẽ mang đến tận nhà cho bạn
Để tiếp cận và góp phần đẩy mạnh sự phổ biến của thương mại điện tử ở ViệtNam, em đã tìm hiểu đề tài, “Thiết kế và Xây dựng Website bán điện thoại di đông
và laptop”
1.2 Mục tiêu của đề tài
- Nhằm tổng hợp những kiến thức đã học trong suốt quá trình học tập tại trườngcũng như những kiến thức mà em tìm hiểu được trên internet và trong sách báo để:
+ Tìm hiểu rõ hơn, sâu hơn và làm rõ hơn các khái niệm về TMĐT
+ Khả năng phân tích cho một hệ thống
+ Tiếp cận công cụ lập trình
+ Kỹ thuật lập trình trên internet
Trang 6+ Thời gian triển khai dự án lên internet nhanh chóng và chi phi thấp
+ Chi phí duy trì và bảo trì hệ thống thấp
+ An toàn, ổn đinh và bảo mật dữ liệu
1.3 Tính mới của đề tài
- Sử dụng công nghệ Ajax trong cập nhật giỏ hàng
1.4 Đối tượng và phạm vi nghiên cứu
- Đối tượng:
+ Ngôn ngữ PHP, hệ quản trị cơ sở dữ liệu MySQL, Jquery, CSS, HTML,Ajax, bootstrap
- Phạm vi:
+ Các mặt hàng thương mại điện tử cụ thể là điện thoại di động và latop
1.5 Phương pháp nghiên cứu
Phương pháp nghiên cứu thực tiễn
Nghiên cứu tham khảo tài liệu trên internet và một số website thương mại
Trang 7B NỘI DUNG NGHIÊN CỨU CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Tìm hiểu về thương mại điện tử
1.1.1 Thương mại điện tử là gì ?
Thương mại điện tử (Còn gọi là E-commerce, e-comm hay EC) là quy trìnhmua bán hàng hóa và dịch vụ thông qua các phương tiện điện tử và mạng viễn thông,đặc biệt là qua máy tính và mạng Internet
Ngày nay người ta hiểu khái niệm thương mại điện tử thông thường là tất cả cácphương pháp tiến hành kinh doanh và các quy trình quản trị thông qua các kênh điện
tử mà trong đó Internet hay ít nhất là các kỹ thuật và giao thức được sử dụng trongInternet đóng một vai trò cơ bản và công nghệ thông tin được coi là điều kiện tiênquyết Một khía cạnh quan trọng khác là không còn phải thay đổi phương tiện truyềnthông, một đặc trưng cho việc tiến hành kinh doanh truyền thống Thêm vào đó là tácđộng của con người vào quy trình kinh doanh được giảm xuống đến mức tối thiểu Đểlàm được điều này đòi hỏi phải tích hợp rộng lớn các các tính năng kinh doanh
1.1.2 Lợi ích của thương mại điện tử
Lợi ích lớn nhất mà Thương mại điện tử mang lại đó chính là tiết kiệm được chiphí lớn tạo thuận lợi cho các bên giao dịch Giao dịch bằng phương tiện điện tử nhanhhơn là giao dịch bằng truyền thông, ví dụ gửi fax hay thư điện tử thì nội dung thông tin
sẽ đến người nhận nhanh hơn là gửi thư Các giao dịch qua internet có chi phí rất rẻ,một doanh nghiệp có thể gửi thư tiếp thị, chào hàng đến hàng loạt khách hàng chỉ vớichi phí giống như gửi cho một khách hàng Với Thương mại điện tử, các bên có thểtiến hành giao dịch khi ở cách xa nhau, giữa thành phố với nông thôn, từ nước nàysang nước khác hay nói cách khác là không bị giới hạn bởi không gian địa lý Điều nàycho phép các doanh nghiệp tiết kiệm chi phí đi lại, thời gian gặp mặt trong khi muabán Với người tiêu dùng họ có thể ngồi tại nhà để đặt hàng, mua sắm nhiều loại hànghóa dịch vụ thật nhanh chóng
Những lợi ích như trên chỉ có được với những doanh nghiệp thực sự nhận thứcđược tầm quan trọng của Thương mại điện tử Vì vậy, Thương mại điện tử góp phầnthúc đẩy sự cạnh tranh giữa các doanh nghiệp để thu được nhiều lợi ích nhất Điều nàyđặc biệt quan trọng trong bối cảnh hội nhập kinh tế quốc tế hiện nay Khi các doanh
Trang 8nghiệp trong nước phải cạnh tranh một cách bình đẳng với các doanh nghiệp nướcngoài.
1.1.3 Ứng dụng của thương mại điện tử
Một số ứng dụng chung nhất của thương mại điện tử:
+ Hệ thống thanh toán trong nước và quốc tế
+ Quản lý nội dung của doanh nghiệp
HTML documents là files kết thúc đuôi html hay htm Bạn có thể xem chúng
bằng cách sử dụng bất kỳ trình duyệt web nào ( như Google Chorme, coccoc, hayMozilla Firefox … , ) Trình duyệt đọc các files HTML này và xuất bản nội dung lêninternet cho người dùng xem
Thông thường, trung bình một web chứa nhiều trang web HTML, ví dụ như:trang chủ, trang about, trang liên hệ, tất cả đều cần các trang HTML riêng
Mỗi trang HTML chứa một bộ các tag (cũng được gọi là elements), bạn có thể
xem như là việc xây dựng từng khối của một trang web Nó tạo thành cấu trúc cây thưmục bao gồm section, paragraph, heading, và những khối nội dung khác
Hầu hết các HTML elements đều có tag mở và tag đóng với cấu trúc như
<tag></tag>.
Trang 91.2.2 Ngôn ngữ css
1.2.2.1.CSS là gì ?
CSS là ngôn ngữ tạo phong cách cho trang web - Cascading Style Sheetlanguage Nó dùng để tạo phong cách và định kiểu cho những yếu tố được viết dướidạng ngôn ngữ đánh dấu, như là HTML Nó có thể điều khiển định dạng của nhiềutrang web cùng lúc để tiết kiệm công sức cho người viết web Nó phân biệt cách hiểnthị của trang web với nội dung chính của trang bằng cách điều khiển bố cục, màu sắc,
và font chữ
CSS được phát triển bởi W3C (World Wide Web Consortium) vào năm 1996,
vì một lý do đơn giản HTML không được thiết kế để gắn tag để giúp định dạng trangweb Bạn chỉ có thể dùng nó để “đánh dấu” lên site
Những tag như <font> được ra mắt trong HTML phiên bản 3.2, nó gây rất nhiều
rắc rối cho lập trình viên Vì website có nhiều font khác nhau, màu nền và phong cáchkhác nhau Để viết lại code cho trang web là cả một quá trình dài, cực nhọc Vì vậy,CSS được tạo bởi W3C là để giải quyết vấn đề này
Mối tương quan giữa HTML và CSS rất mật thiết HTML là ngôn ngữ markup(nền tảng của site) và CSS định hình phong cách (tất cả những gì tạo nên giao diệnwebsite), chúng là không thể tách rời
Tuy nhiên, cũng có nhiều quy tắc cần ghi nhớ
Selector sẽ trả về yếu tố HTML bạn cần muốn tạo phong cách Block khai báo sẽbao gồm một hay nhiều khai báo cách nhau bởi dấu chấm phẩy
Mỗi khai báo bao gồm một tên CSS và giá trị, cách nhau bởi dấu 2 chấm Khaibáo CSS luôn kết thúc bằng dấu chấm phẩy, và block khai báo được đặt trong dấungoặc nhọn
Trang 101.2.3 Ngôn ngữ JQUERY
1.2.3.1 Jquery là gì ?
JQuery là một thư viện kiểu mới đa nền tảng và giàu tính năng được viết từ
JavaScript Nó được thiết kế để đơn giản hóa các kịch bản phía máy khách của HTML.JQuery cung cấp các API giúp việc duyệt tài liệu HTML, thao tác, hoạt ảnh, xử lý sựkiện, và thao tác AJAX đơn giản hơn JQuery hoạt động tốt trên nhiều loại trình duyệtkhác nhau, giúp cải thiện hiệu suất, tạo điều kiện cho người dùng bằng các dòng tốithiểu
1.2.3.2 Lịch sử phát triển
JQuery được phát hành vào tháng 1 năm 2006 bởi John Resig tại BarCampNYC Nó hiện đang được duy trì và phát triển bởi một nhóm các nhà phát triển của
Google đứng đầu là Timmy Wilson.
Ngày nay, jQuery được sử dụng khá rộng rãi Hầu hết các trang web đang sửdụng jQuery
1.2.3.3 Cách sử dụng
Có hai cách để sử dụng jQuery:
+ Cài đặt cục bộ - Bạn có thể tải jQuery Library trên máy của bạn và đưa nó
vàotrong code HTML
+ Sử dụng từ CDN (CDN Based Version) - Bạn có thể đưa thư viện jQuery
vào trong code HTML một cách trực tiếp từ Content Delivery Network (CDN)
1.2.4 Công nghệ Ajax
AJAX (Asynchronous JavaScript and XML - JavaScript và XML) là một nhómcác công nghệ phát triển web được sử dụng để tạo các ứng dụng web động haycác ứng dụng giàu tính Internet Ajax là một kỹ thuật phát triển web có tính tương táccao bằng cách kết hợp các ngôn ngữ:
HTML (hoặc XHTML) với CSS trong việc hiển thị thông tin
Mô hình DOM (Document Object Model) được thực hiện thông qua JavaScript,nhằm hiển thị thông tin động và tương tác với những thông tin được hiển thị
Đối tượng XMLHttpRequest để trao đổi dữ liệu một cách không đồng bộ vớimáy chủ web
Trang 11XML thường là định dạng cho dữ liệu truyền, mặc dầu bất cứ định dạng nàocũng có thể dùng, bao gồm HTML định dạng trước, văn bản thuần (plain text), JSON
Theo nghĩa chuyên môn, PHP (viết tắt của Personal Home Page) là một ngôn
ngữ lập trình script (một nhánh của ngôn ngữ lập trình) 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
PHP là ngôn ngữ lập trình sử dụng mã nguồn mở Điều này có nghĩa là bạn cóthể sử dụng PHP hoàn toàn miễn phí cho việc thực hiện website của mình Ngôn ngữPHP có thể chạy được trên nhiều nền tảng hệ điều hành khác nhau như Windows, Mac
OS và Linux
1.2.5.2 Những điểm mạnh của PHP
PHP hoạt động với tốc độ rất nhanh và hiệu quả Một server bình thường có thểđáp ứng được hàng triệu truy cập / ngày
PHP hỗ trợ kết nối đến hàng triệu hệ quản trị cơ sở dữ liệu khác nhau
PHP cung cấp một hệ thống dữ liệu phong phú Do từ đầu, PHP tạo ra để xâydựng và phát triển các ứng dụng trên web nên nó cung cấp rất nhiều hàm xây dựng sẵngiúp dễ dàng thực hiện các công việc như: Gửi, nhận mail, làm việc với Cookie PHP
là ngôn ngữ đơn giản, dễ sử dụng cho nhiều người mới bắt đầu nhập môn lập trìnhweb
PHP có thể sử dụng được trên nhiều hệ điều hành Thậm chí, các lập trình viên
có thể đem mã PHP này chạy trên các hệ điều hành khác mà không phải sửa đổi lạimã
PHP sử dụng mã nguồn mở, mang lại sự linh hoạt cho các lập trình viên trongquá trình chỉnh sửa, sáng tạo riêng của mình
Trang 12Một lợi thế rất lớn của ngôn ngữ PHP là tính cộng đồng PHP được phát triển
và tối ưu liên tục từ các nhà phát triển trên toàn thế giới khiến cho nó vô cùng thânthiện với mọi người và ngày càng hoàn thiện hơn
đó là Responsive Responsive sẽ giúp website của bạn hiển thị tương thích với mọikích thước màn hình nhờ đó bạn sẽ tùy chỉnh hiện thị được nhiều hơn trên các loạimàn hình khác nhau
Ưu điểm của Bootstrap:
+ Tiết kiệm thời gian: Boostrap giúp người thiết kế giao diện website tiết kiệmrất nhiều thời gian Các thư viện Bootstrap có những đoạn mã sẵn sàng cho bạn ápdụng vào website của mình Bạn không phải tốn quá nhiều thời gian để tự viết codecho giao diện của mình
+ Tùy biến cao: Bạn hoàn toàn có thể dựa vào Bootstrap và phát triển nền tảnggiao diện của chính mình Bootstrap cung cấp cho bạn hệ thống Grid System mặc địnhbao gồm 12 cột và độ rộng 940px Bạn có thể thay đổi, nâng cấp và phát triển dựa trênnền tảng này
Trang 13+ Responsive Web Design: Với Bootstrap, việc phát triển giao diện website đểphù hợp với đa thiết bị trở nên dễ dàng hơn bao giờ hết Đây là xu hướng phát triểngiao diện website đang rất được ưu chuộng trên thế giới.
1.3 Tổng quan về hệ quản trị cơ sở dữ liệu MySQL
1.3.1 Một số khái niệm về hệ quản trị cơ sở dữ liệu MySQL
MySQL là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung vớiApache, PHP Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên MySQL đãqua rất nhiều sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở MySQL cũng
có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL Nhưng MySQLkhông bao quát toàn bộ những câu truy vấn cao cấp như SQL Về bản chất MySQL chỉđáp ứng việc truy xuất đơn giản trong quá trình vận hành của website nhưng hầu hết
có thể giải quyết các bài toán trong PHP
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, 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ínhbả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ủ MySQL làmột trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng ngônngữ truy vấn có cấu trúc (SQL) MySQL đang được sử dụng cho nhiều công việc kinhdoanh từ nhỏ tới lớn:
+ MySQL là mã ngồn mở vì thế sử dụng không mất phí
+ MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL.+ MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP,PERL, C, C++, Java, …
+ MySQL làm việc nhanh với các tập dữ liệu lớn
+ MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữatrong một bảng Kích cỡ file mặc định được giới hạn cho một bảng là 4 GB(Gigabyte), nhưng bạn có thể tăng kích cỡ này (nếu hệ điều hành của bạn có thể xử lýnó) để đạt tới giới hạn lý thuyết là 8 TB ( Terabyte )
+ MySQL là có thể điều chỉnh Giấy phép GPL mã nguồn mở cho phép lậptrình viên sửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể của họ
Trang 141.3.2 Các thành phần của MySQL
Kết nối đến cơ sở dữ liệu MySQL: tìm hiểu làm thế nào để sử dụng PHP để mở
và đóng một kết nối cơ sở dữ liệu MySQL
Tạo cơ sở dữ liệu MySQL Sử dụng PHP: phần này giải thích làm thế nào để tạo
ra cơ sở dữ liệu và bảng MySQL bằng cách sử dụng PHP
Xóa cơ sở dữ liệu MySQL Sử dụng PHP: phần này giải thích làm thế nào đểxóa cơ sở dữ liệu và bảng MySQL bằng cách sử dụng PHP
Chèn dữ liệu Cơ sở dữ liệu MySQL: một khi bạn đã tạo ra cơ sở dữ liệu và cácbảng của bạn sau đó bạn muốn chèn dữ liệu vào bảng được tạo ra Phiên họp này sẽđưa bạn qua ví dụ thực tế về dữ liệu chèn
Lấy dữ liệu từ cơ sở dữ liệu MySQL: tìm hiểu làm thế nào để lấy hồ sơ từ cơ sở
dữ liệu MySQL bằng cách sử dụng PHP
Sử dụng Paging qua PHP: điều này giải thích làm thế nào để hiển thị kết quảtruy vấn của bạn thành nhiều trang và làm thế nào để tạo ra các liên kết điều hướng.Đang cập nhật dữ liệu vào cơ sở dữ liệu MySQL: phần này giải thích làm thế nào đểcập nhật hồ sơ hiện có vào cơ sở dữ liệu MySQL bằng cách sử dụng PHP
Xóa dữ liệu từ cơ sở dữ liệu MySQL: phần này giải thích làm thế nào để xóahoặc tẩy hồ sơ hiện từ cơ sở dữ liệu MySQL bằng cách sử dụng PHP
Sử dụng PHP Để sao lưu cơ sở dữ liệu MySQL: tìm hiểu những cách khác nhau
để sao lưu cơ sở dữ liệu
1.4 Công cụ sử dụng
1.4.1 Công cụ phát triển web Visual Studio Code
1.4.1.1 Khái niệm
Visual studio là một trong những công cụ hỗ trợ lập trình website rất nổi tiếng
nhất hiện nay của Microsoft và chưa có một phần mềm nào có thể thay thế được nó.Visual Studio được viết bằng 2 ngôn ngữ đó chính là C# và VB+ Đây là 2 ngôn ngữlập trình giúp người dùng có thể lập trình được hệ thống một các dễ dàng và nhanhchóng nhất thông qua Visual Studio
Visual Studio là một phần mềm lập trình hệ thống được sản xuất trực tiếp
từ Microsoft Từ khi ra đời đến nay, Visual Studio đã có rất nhiều các phiên bản sửdụng khác nhau Điều đó, giúp cho người dùng có thể lựa chọn được phiên bản tươngthích với dòng máy của mình cũng như cấu hình sử dụng phù hợp nhất
Trang 15Bên cạnh đó, Visual Studio còn cho phép người dùng có thể tự chọn lựa giaodiện chính cho máy của mình tùy thuộc vào nhu cầu sử dụng.
1.4.1.2 Điểm mạnh của web Visual Studio Code
+ Visual Studio hỗ trợ lập trình trên nhiều ngôn ngữ như: C/C++, C#, F#,Visual Basic, HTML, CSS, JavaScript
+ Là một công cụ hỗ trợ việc Debug một cách dễ dàng và mạnh mẽ như: BreakPoint, xem giá trị của biến trong quá trình chạy, hỗ trợ debug từng câu lệnh
+ Giao diện Visual Studio rất dễ sử dụng đối với người mới bắt đầu lập trình.+ Visual Studio hỗ trợ phát triển các ứng dụng: desktop MFC, Windows Form,Universal App, ứng dụng mobile Windows Phone 8/8.1, Windows 10, …
+ Visual Studio hỗ trợ xây dựng ứng dụng một cách chuyên nghiệp bằng cáccông cụ kéo thả
+ Visual Studio được đông đảo lập trình viên trên thế giới sử dụng
1.4.2 Chương trình tạo máy chủ web Xampp
Phần mềm XAMPP là một loại ứng dụng phần mềm khá phổ biến và thường
hay được các lập trình viên sử dụng để xây dựng và phát triển các dựa án website theongôn ngữ PHP XAMPP thường được dùng để tạo máy chủ web (web server) đượctích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ nhưphpMyAdmin
Đặc biệt, Xampp có giao diện quản lý khá tiện lợi, cho phép người dùng chủđộng bật tắt hoặc khởi động lại các dịch vụ máy chủ bất kỳ lúc nào Phần mềm nàycũng được thiết lập và phát triển dựa trên mã nguồn mở
Nhìn chung XAMPP được xem là một bộ công cụ hoàn chỉnh dành cho lập trìnhviên PHP trong việc thiết lập và phát triển các website, nó tích hợp các thành phầnquan trọng và tương thích lẫn nhau như:
+ Apache
+ PHP (tạo môi trường chạy các tập tin script*.php)
+ MySQL (hệ quản trị cơ sở dữ liệu mysql)
1.4.3 Công cụ quản trị cơ sở dữ liệu phpMyAdmin
1.4.3.1 Khái niệm
PhpMyAdmin là phần mềm mã nguồn mở được viết bằng ngôn ngữ PHP giúp
quản trị cở sở dữ liệu MySQL thông qua giao diện web.
Trang 161.4.3.2 Tính năng chung của phpMyadmin
- Một số tính năng chung thường được sử dụng trên phpMyAdmin:
+ Quản lý user(người dùng): thêm, xóa, sửa(phân quyền)
+ Quản lý cơ sở dữ liệu: tạo mới, xóa, sửa, thêm bảng, hàng, trường, tìm kiếm đối tượng
+ Nhập xuất dữ liệu(Import/Export): hỗ trợ các định dạng SQL, XML và CSV
+ Thực hiện các truy vấn MySQL, giám sát quá trình và theo dõi
+ Sao lưu và khôi phục(Backup/Restore): Thao tác thủ công
1.4.4 Trình duyệt coccoc.
Cốc Cốc (trước đây có tên là Cờ Rôm+) là trình duyệt dành cho thị trường Việt
Nam do Công ty trách nhiệm hữu hạn công nghệ Cốc Cốc phát triển dựa trên nềntảng mã nguồn mở Chromium - một nền tảng phổ biến, có tính bảo mật, được nhiềutrình duyệt web khác sử dụng, ví dụ như Google Chrome và Opera Cốc Cốc sửdụng bộ máy tìm kiếm Cốc Cốc
Về cơ bản, các tính năng, chất lượng và độ ổn định của Cốc Cốc là khá tươngđồng với Google Chrome do sử dụng chung một nhân là nền tảng mã nguồn
mở Chromium, được xác nhận bởi báo chí như Dân trí, VnExpress, GenK, và cộngđồng công nghệ
Phiên bản đầu tiên của trình duyệt Cốc Cốc được ra mắt vào ngày 14 tháng 12năm 2012, dưới tên Cờ Rôm+ Phiên bản này có giao diện tương tự như GoogleChrome và bổ sung hai tính năng khác biệt là: tải file với tốc độ cao và tải fileaudio/video từ các trang web giải trí đa phương tiện
Phiên bản chính thức của trình duyệt được phát hành năm tháng sau vào ngày
14 tháng 5 năm 2013
Ngày 02 tháng 04 năm 2014, Cờ Rôm+ chính thức đổi tên thành trình duyệt CốcCốc, đồng thời cập nhật logo mới Quyết định này nhằm thống nhất thương hiệu giữacác sản phẩm chính của công ty bao gồm: trình duyệt Cốc Cốc, công cụ tìm kiếm CốcCốc và ứng dụng bản đồ Maps
Trang 171.5 Phương pháp tiếp cận hướng đối tượng
1.5.1 Tổng quan về UML
UML là ngôn ngữ dùng để:
+Trực quan hóa
+ Chi tiết hóa
+ Sinh ra mã ở dạng nguyên mẫu
+ Lập và cung cấp tài liệu
- Các sơ dồ lớp:
+ Sơ đồ lớp (Class Diagram)
Bao gồm một tập hợp các lớp, các giao diện, sơ đồ hợp tác và mối quan hệ giữachúng Nó thể hiện mặt tĩnh cùa hệ thống
+ Sơ đồ đõì tượng (Object Diagram)
Bao gồm một tập hợp các đối tượng và mối quan hệ giữa chúng Đối tượng làmột thể hiện của lớp, sơ đồ đối tượng là một thể hiện của sơ đồ lớp
+ Sơ đồ Use case(Use Case Diagram):
Khái niệm actor: là những người dùng(tác nhân)
hay hệ thống khác ở bên ngoài phạm vi của hệ thống mà có tương tác với hệ thống
Sơ đồ Use case bao gồm một tập hợp caccs Use case, các actor và thể hiện mối quan hệ tương tác giữa actor và Use case Nó rất quan trọng trong việc tổ chức và mô hình hóa hành vi của hệ thống
+ Sơ đô tuần tự (Sequence Diagram):
Là một dạng biểu đồ tương tác (interaction), biểu diễn sự tương tác giữa các đốitượng theo thứ tự thời gian Nó mô tả cá đối tượng liên quan trong một tình huống cụ thể và các bước tuần tự trong việc trao đổi các thông báo(message) giữa các đối tượng
đó để thực hiện một chức năng nào đó của hệ thống
+ Sơ đồ hợp tác (Collaboration):
Gần giống như sơ đồ Sequence, sơ đồ hợp tác là một cách khác để thể hiện mộttình huống có thể xảy ra trong hệ thống Nhưng nó tập trung vào việc thế hiện việctrao đổi qua lại các thông báo giữa các dõi tượng chứ không quan tâm đến thứ tự cùacác thông báo đó có nghĩa là qua đó chúng ta sẽ biết được nhanh chóng giữa 2 đốitượng cụ thể nào đó có trao đổi những thông báo gì cho nhau
Trang 18+ Sơ đồ chuyển trạng thái (Statechart)
Chỉ ra một máy chuyển trạng thái, bao gồm các trạng thái, các bước chuyển trạngthái và các hoạt động Nó đặc biệt quan trọng trong việc mô hình hóa hành vi của mộtlớp giao diện(interface class) hay hợp tác và nó nhấn mạnh vào các đáp ứng theo sựkiện cùa một đối tượng, điều này rất hữu ích khi mô hình hóa một hệ thống phảnứng(reactive)
+ Sơ đồ hoạt động (Activity)
Là một dạng đặc biệt của sơ đồ chuyển trạng Nó chì ra luồng đi từ hoạt động nàysang hoạt động khác trong một hệ thống Nó đặc biệt quan trọng trong việc xây dựng
mô hình chức năng của hệ thốngvà nhấn mạnh tới việc chuyển đồi quyền kiểm soátgiữa các đổì tượng
+ Sơ đồ thành phần (Component)
Chỉ ra cách tổ chức và sự phụ thuộc của các thành phần(component) Nó liênquan tới sơ dồ lớp, trong đó một thành phần thường ánh xạ tới một hay nhĩều lớp, giaodiện, collaboration
+ Quan hệ Thừa kế (Generalization)
Chỉ ra cấu hình của hệ thống khi thực thi
1.5.2 Biểu đồ ca sử dụng use case
Mô tả toàn cảnh hệ thống, đơn giản và ít ký hiệu
1.5.2.1 Mục đích của sơ đồ Use Case
+ Mô hình hóa chuỗi hành động
+ Cung cấp tổng thể hệ thống
+ Đưa ra cơ sở để xác định giao tiếp giữa người, đối với hệ thống
+ Mô hình hóa cho một Use Case
+ Cho người dùng hiểu và giao tiếp với hệ thống
+ Làm cơ sở cho phát thảo các đặc tả và kiểm tra
Trang 191.5.2.2 Các kí hiệu cơ bản
Bảng 1.5.2.2.1 Các kí hiệu cơ bản trong sơ đồ Use Case
1.5.2.3 Sơ đồ lớp
Khái niệm
- Đối tượng (object):
+ Mô hình hóa một vật hoặc một khái niệm trong thế giới thực+ Một đối tượng có các đặc điểm như: trạng thái (state), Ứng xử(behavior), định dạnh(indentity)
Lớp (class):
+ Là tập hợp các dõi tượng có chung các thuộc tính, các ứng xử và ngữ nghĩa
+ Là một khuôn mẫu để tạo ra dõi tượng
+ Đõì tượng là một thế hiện của một lớp
Gói(package):
+ Là tập hợp các lớp hay các gói có liên quan với nhau
Sơ đồ lớp ( class diagram)
+ Cung cấp một bức tranh mô tả một số hoặc tất cả các lớp trong môhình
+ Thể hiện cấu trúc và ứng xử của một hy nhiều lớp
Trang 20+ Thể hiện mối quan hệ kế thừa giữa các lớp
Trang 21CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1 Khảo sát hệ thống
2.1.1 Phân tích yêu cầu người dùng
2.1.1.1 Yêu cầu của khách hàng về giao diện.
+ Giao diện dễ sử dụng và có tính thầm mỹ cao.
+ Cho phép khách hàng xem thông tin chi tiết sản phẩm và đặt hàng một cách
dễ dàng
+ Thông tin sản phẩm phong phú, đa dạng.
+ Giới thiệu, bày bán nhiều loại hàng, nhiều mặt hàng để khách hàng có nhiều
cơ hội lựa chọn về một loại mặt hàng
+ Thông tin về một sản phẩm phải chi tiết để khách hàng có thể nắm bắt rõthông tin về sản phẩm mình lựa chọn Đặc biệt là những mặt hàng được nhiều kháchhàng quan tâm
+ Cho phép khách hàng đặt mua sản phẩm mà không cần đăng ký là thành viên.+ Luôn cập nhật, giới thiệu những sản phẩm mới nhất
2.1.1.2 Yêu cầu của khách hàng về tìm kiếm.
Khi khách hàng có nhu cầu muốn mua một sản phẩm họ cần tìm kiếm thông tin
về sản phẩm đó Khách hàng có thể tìm kiếm nhanh bằng cách nhập tên sản phẩmmình muốn xem trên thanh tìm kiếm
2.1.1.3 Yêu cầu của khách hàng về đặt hàng.
Sau khi xem thông tin chi tiết về sản phẩm, khách hàng có thể nhấn vào thêmgiỏ hàng để đặt sản phẩm mà mình muốn mua Sau khi sản phẩm được thêm vào giỏhàng, khách hàng có thể xem lại thông tin của mình đã đặt một lần nữa trước khi thanhtoán
Sau khi thông tin của những sản phẩm khách hàng đã thêm vào giỏ hàng chínhxác khách hàng chọn thanh toán, trong phần thanh toán khách hàng ghi rõ các thôngtin: họ tên, số điện thoại, email, địa chỉ, ghi chú (nếu có), và chọn hình thức thanhtoán
Website có 2 hình thức thanh toán: thanh toán tại cửa hàng và thanh toán tạinhà
+ Thanh toán tại nhà: khi khách hàng chọn hình thức thanh toán tại nhà thì sảnphẩm mà khách hàng đặt sẽ được giao tới tận nhà khách hàng qua địa chỉ mà khách
Trang 22hàng cung cấp Sau khi khách hàng nhận được sản phẩm nhân viên sẽ thanh toán tạinhà khách hàng thông.
+ Thanh toán tại cửa hàng: khi khách hàng chọn hình thức thanh toán tại cửahàng, sản phẩm của khách hàng sẽ được lưu giữ lại và đợi khách hàng lại cửa hàngnhận và thanh toán
2.1.1.4 Một số thông tin khác.
Trên thanh công cụ của trang web còn có 1 số thông tin về cửa hàng, giới thiệu
về cửa hàng, liên hệ với cửa hàng và những blog tin tức được cập nhật mới liên tục đểkhách hàng có thể tìm hiểu và tham khảo
2.1.2 Yêu cầu của người quản trị
2.1.2.1 Yêu cầu về đăng nhập
Chức năng đăng nhập cho phép người quản lý đăng nhập vào hệ thống để thựchiện việc quản lý thông tin Thông tin đăng nhập gồm có: Tên đăng nhập và mật khẩu.Khi đăng nhập không đúng thông tin thì người quản lý sẽ thấy những cảnh báo mà hệthống đưa ra
2.1.2.2 Quản lý thông tin thành viên
Người quản lý quản lý thông tin tài khoản thành viên bao gồm thông tin thành
viên viên Họ Tên, Tên đăng nhập, Mật khẩu, Số điện thoại, email, Giới tính, vai trò.Người quản lý thêm thành viên và phân nhiệm vụ cho thành viên
* Hiển thị thông tin tài khoản
Khi thành viên đăng nhập vào hệ thống thì hiển thị thông tin tài khoản củathành viên
* Danh sách thành viên
Danh sách thành viên là các nhân viên của công ty được người quản lý phâncông nhiệm vụ Bán hàng, Thu ngân, Biên tập viên Bao gồm các chức năng thêm mới,cập nhật, xóa thành viên
Trang 23* Thêm danh mục
Mỗi khi có thêm danh mục nào mới thì Quản lý phải làm công việc nhập thôngtin của danh mục vào cơ sở dữ liệu Các thông tin này bao gồm các thông tin trên.Thông tin của danh mục sẽ được lưu vào cơ sở dữ liệu
2.1.2.4 Quản lý sản phẩm
Quản lý sản phẩm gồm quản lý sản phẩm, các thông tin sản phẩm bao gồm: Mãsản phẩm, Tên sản phẩm, giá sản phẩm, Số lượng, Mô tả ngắn về sản phẩm, số lượng,Hình ảnh sản phẩm, Nội dung, Người tạo, thời gian tạo
* Thêm mới sản phẩm
Mỗi khi có sản phẩm mới người quản lý phải làm công việc thêm mới sản phẩm,ứng với sản phẩm ,nhập thông tin của sản phẩm danh mục vào cơ sở dữ liệu Thông tincủa sản phẩm sẽ được lưu trong cơ sở dữ liệu
2.1.2.5 Quản lý tin tức, bài viết
Các thông tin tin tức bao gồm: Tên tin tức, Mô tả ngắn, Nội dung, Hình ảnh
* Thêm tin tức
Mỗi khi có thông tin nào mới thì Biên tập viên sẽ thêm những thông tin đó vàovào trong cơ sỡ dữ liệu
Trang 24-Nhân viên bán hàng tiếp nhận đơn đặt hàng của khách
-Trong quản lý bán hàng có quản lý thông tin khách hàng và quản lý danh sáchđơn hàng
* Quản lý thông tin khách hàng
Nhân viên bán hàng có thể xem được tất cả những thông tin khách hàng như Họtên, Địa chỉ, Số điện thoại, Email, Mã đơn hàng, Ngày tạo Nhân viên bán hàng sẽ xácnhận lại một lần nữa thông tin đơn hàng mà khách hàng đã đặt hàng thông qua emailhoặc gọi trực tiếp khách hàng để cập nhật trạng thái cho đơn hàng
* Quản lý thông tin đơn hàng
Sau khi đã xác nhận thông tin đơn hàng thì Nhân viên bán hàng sẽ cập nhậttrạng thái cho đơn hàng chuyển từ trạng thái chờ xác nhận sang đang đóng gói và sẽcập nhật dần trạng thái cho đơn hàng Trạng thái đơn hàng bao gồm 5 trạng thái Chờxác nhận, Đang đóng gói, Đang giao hàng, Hủy, Hoàn tất Đơn hàng sau khi nhận ởtrạng thái Hoàn tất sẽ được lấy ra để làm dữ liệu Báo cáo thống kê
2.1.2.7 Quản lý thống kê, báo cáo
Trong quản lý thống kê có: Thống kê danh sách sản phẩm đã bán, Báo cáodoanh thu
+ Thống kê sản phẩm đã bán được: Khi đơn hàng được nhân viên bán hàng cậpnhật trạng thái Hoàn tất thì dữ liệu đơn hàng đó sẽ được hệ thống lọc ra để thống kênhững dữ liệu: Ngày bán, Tên sản phẩm, Mã sản phẩm, Số lượng bán ra , Tiền hàng,
Số lượng đơn hàng
+ Báo cáo doanh thu: Dựa trên danh sách hàng đã bán được hệ thống sẽ thống
kê và đưa ra doanh thu bao gồm: Ngày bán, Tổng đơn hàng, Tống số sản phẩm, doanhthu
Trang 252.1.3 Yêu cầu phi chức năng
1 Giao diện Giao diện hệ thống phải dễ sử dụng, trực quan,
thân thiện với người dùng
2 Tốc độ xử lý Hệ thống phải xử lý nhanh chóng và chính xác
3 Bảo mật Tính bảo mật và độ an toàn cao
4 Tương thích Tương thích với đa phần các trình duyệt web
hiện tại
Bảng 2.1.3.1 - Các yêu cầu chức năng của ứng dụng
R.1 Cập nhật tin tức bài viết
R1.1 Biên tập viên biên soạn nội dung bài viết tin tức
R1.2 Biên tập viên kiếm tra thông tin nếu có sai sót nhầm lẫn
R1.3 Biên tập viên thêm thông tin vào CSDL
R.1.4 Biên tập viên xóa bài viết đã cũ
R1.5 BTV đăng xuất khỏi hệ thống
R.2.Cập nhật sản phẩm
R2.1 Quản lý cập nhập và thêm sản phẩm mỗi khi có sản phẩm mới
R2.2.Quản Lý kiểm tra thông tin nếu có sai sót
R2.3 Quản lý thêm thông tin vào CSDL
R3.3 Nhân viên cập nhật trạng thái cho đơn hàng
R3.4 NV Bán hàng đăng xuất khỏi hệ thống
R.4 Thanh toán
R4.1.Khách hàng yêu cầu thanh toán tại cửa hàng
Trang 26R4.1.2 NV lưu giữ HĐ tính và chờ khách hàng đến thanh toán
R4.1.3 Khách đưa tiền cho nhân viên
R4.1.4 NV xác nhận, thối lại tiền thừa cho Khách, in HĐ đưa cho Khách
R4.1.5 NV Lưu thông tin HĐ vào CSDL
R4.2 Khách hàng thanh toán tại nhà
R4.2.1 NV tạo HĐ
R4.2.2 NV in HĐ
R4.2.3 NV Đóng gói sản phẩm
R4.2.3.NV giao HĐ và sản phẩm cho Bên giao hàng thanh toán
R4.3.NV thu ngân đăng xuất khỏi hệ thống
R5 Thống kê
R5.1 NV Thu ngân đăng nhập vào hệ thống để lấy thông tin thống kê
R5.1.1 Thống kê sản phẩm đã bán được
R5.1.2 Báo cáo Doanh thu
R5.2 NV Thu ngân thoát khỏi hệ thống
R6 Tìm kiếm
R6.1 Mỗi bộ phận đăng nhập vào hệ thống tìm kiếm thông tin liên quan đếnnhiệm vụ của mình để làm việc
R6.1.1 NV đăng xuất khỏi hệ thống
R6.2 Khách hàng tìm kiếm sản phẩm theo nhu cầu của mình trên thanh tìmkiếm
R7 Đặt hàng
R7.1 chọn sản phẩm xem thông tin chi tiết sản phẩm thêm vào giỏ hàng
R7.2 Vào giỏ hàng xóa hoặc thêm số lượng nếu khách hàng muốn đặt thêmmua tiếp sản phẩm khác
R7.3 Điền thông tin khách hàng
R7.4 Chọn phương thức thanh toán
R7.5 Đặt hàng
R7.6 Nhận thông báo vào xác nhận đơn hàng
R8 Đăng nhập
R8.1 Thành viên vào chức năng đăng nhập
R8.2 From đăng nhập hiển thị
Trang 27R8.3 Nhập tên mật khẩu vào form đăng nhập
R8.4 Hệ thống kiếm tra tên, mật khẩu thành viên
R8.5.Đăng nhập thành công
R8.5.1 Ngược lại thành viên đăng nhập không thành công
R8.5.2 Hệ thống thông báo lỗi
R8.5.3 Hệ thống yêu cầu nhập lại password, mật khẩu
R8.6 Đăng xuất khỏi hệ thống
R9 Xemtintucbaiviet
R9.1 Khách hàng chọn danh mục tin tức, bài vết trên menu hệ thống
R9.2.Giao diện xem tin tức bài viết xuất hiện
R9.3.khách hàng chọn xem chi tiết bài viết, tin tức
R9.4 Để lại ý kiến đánh giá bình luận
R10 Quanlynhanvien
R10.1 Thêm nhân viên mỗi khi có nhân viên mới
R10.2 Cập nhật chỉnh sửa thông tin nhân viên
R10.2 Xóa nhan vien khi nhan vien nghi viec
2.2 PHÂN TÍCH HỆ THỐNG
2.2.1.Các chức năng của hệ thống
Hệ thống quản trị trang web
- Quản lý các đơn hàng, khách hàng
- Quản lý thành viên: Thêm, sữa, xóa, đổi mật khẩu , phân chia nhiệm vụ
- Quản lý danh mục sản phẩm : Thêm, sửa, xóa danh mục
- Quản lý sản phẩm: Cập nhật thông tin về các sản phẩm
- Quản lý blog, tin tức : Thêm, Sửa, Xóa, Cập nhật, blog, tin tức
- Thống kê: Thống kê sản phẩm đã bán, Thống kê doanh thu
Hệ thống giao diện trang web
- Hiển thị danh mục của sản phẩm
- Hiển thị thông tin sản phẩm (giá, thông tin sản phẩm, hình ảnh sảnphẩm, sản phẩm liên quan )
- Xem thông tin sản phẩm, thêm vào giỏ hàng, Thanh toán
- Thông tin liên hệ chính sách bảo hành của cửa hàng
- Giới thiệu về công ty
Trang 282.2.2 Xác định các Actor và vai trò
- Người quản lý(Admin)
+ Báo cáo doanh thu + Thêm, sửa, xóa thông tin thành viên + Thêm, sửa, xóa sản phẩm, danh mục
- Nhà cung cấp
Trang 292.2.3 Biểu đồ Use case hệ thống
Hình 2.2.3.1: Sơ đồ usecase của website
2.2.4 Đặc tả các use case
(1)UC_Đangnhap
Actor: NV bán hàng, Biên tập Viên, Admin Thu ngân
Mô tả:
B1 Hằng ngày khi vào ca làm việc NV bán hàng, Biên tập Viên, Admin., thu
ngân đăng nhập vào hệ thống, nhập tên, mật khẩu, nếu tên mật khẩu đúng hệthống mở, nếu sai hệ thống đưa ra cảnh báo lỗi yêu cầu nhập lại
B2 Lúc kết thúc ca làm việc của mình hoặc kết thúc hoạt động đảm nhiệm,
người thực hiện đăng xuất khỏi hệ thống
Ri: R3.1, R3.2, R5.1
(2)UC_Capnhaptintucbaiviet
Actor: BTV
Mô tả:
Trang 30B1 Biên tập viên (BTV) soạn bài viết tin tức trước khi đưa vào cơ sở dữ liệu
(mabv, tiêu đề, mô tả ngắn, Nội dung, Hình ảnh Thời gian tạo.)
B2 BTV chỉnh sửa thông tin nếu có sai sót.
B3 BTV thêm thông tin mới vào cơ sở dữ liệu.
B4 BTV Xóa bài viết tin tức cũ.
Ri: R8.1, R8.2, : R8.3, : R8.4 : R8.5, R8.5.1, R8.5.2, R8.5.3 R8.6
(3) UC_Bansanpham
Actor: NV bán hàng, Khách hàng
Mô tả:
B1 Hằng ngày hoặc khi vào ca làm việc NV bán hàng xấc nhận thông tin đơn
hàng từ khách đặt hàng thông qua email hoặc gọi trưc tiếp
B2 Sau khi xác nhận đơn hàng thì NV sẽ cập nhật trạng thái cho đơn hàng đấy B3 Sau khi đóng gói sản phẩm xong NV shipper nhận thông tin đơn hàng và sản
phẩm giao cho khách
B4 Khách hàng chọn hình thức thanh toán tại nhà khi gặp nhân viên giao hàng B5 NV shipper sẽ thông báo giao hàng thành công cho bên bộ phận bán hàng
cập nhật trạng thái hoàn tất cho đơn hàng
B6 Lúc kết thúc ca làm việc của mình, NV bán hàng đăng xuất khỏi hệ thống
Ri: R3.1, R3.1.1, R3.2, R3.2.1, R3.2, R3.5
(4)UC_Thanhtoan
Actor: NV thu ngân, Khách hàng
Mô tả:
Thanh toán tại cửa hàng:
B1.Nhân viên thu ngân sẽ lập hóa đơn thông tin đơn hàng
B2 In thông tin đơn hàng
B3 Chờ khách tới đưa tiền và giao sản phẩm cho khách hàng
Thanh toán tại nhà:
B1.Nhân viên thu ngân sẽ lập hóa đơn thông tin đơn hàng
B2 In thông tin đơn hàng
B3 Nhân viên thu ngân giao thông tin qua bên bộ phận giao hàng thanh toán
thông báo kết quả
Ri R4.1, R4.2,R4.3
Trang 31Actor: Quản lý
Mô tả:
B1 Hàng ngày hoặc khi có sản phẩm danh mục mới , Quản lý biên soạn thông
tin liên quan đến sản phẩm danh mục mới, Cập nhật các thông tin về sảnphẩm(Tên sản phẩm, mã sản phẩm, giá, số lượng, Hình ảnh,…),
B2 Thêm vào CSDL, tiếp tục cập nhật sản phẩm khác,
B3 Xóa sản phẩm nào đã cũ và bỏ mẫu ra khoải CSDL
B4 Sau khi xong Quản lý đăng xuất khỏi hệ thống
B1 Khách hàng tìm sản phẩm theo tên, danh mục
B2 Nhập thông tin về tên danh mục, Tên sản phẩm hệ thống sẽ trả về cho khách
hàng biết
Tìm kiếm phía Nhân Viên
B1.NV tìm thông tin liên quan ( Tên bài viết, tên sản phẩm, tên thành viên, Đơn
hàng , khách hàng) nhiệm vụ của mình ở mỗi module
B2 Nhập thông tin cần tìm ( Tên bài viết, tên sản phẩm, tên thành viên, Đơn
hàng , khách hàng) hệ thống sẽ trả dữ liệ về cho nhân viên
Ri: R6.1, R6.1.1, R6.2
Trang 32B1: Xem thông tin sản phẩm
B2: Thêm vào giỏ hàng, thêm số lượng
B3: Xóa giỏ hàng xóa mua tiếp sản phẩm
B1:Chọn danh mục bài viết, tin tức trên menu hệ thống
B2: Chọn bài viết cần xem
B3: xem chi tiết bài viết, tin tức
B4: Để lại ý ki đánh giá
Ri: R9.1, R9.2, R9.3, R9
Trang 332.2.5 Biểu đồ lớp
Hình 2.2.5.1: Biểu đồ lớp
Trang 342.2.6 Biểu đồ trạng thái
2.2.6.1.Biểu đồ trạng thái đăng nhập
Hình 2.2.6.1 Biểu đồ trạng thái đăng nhập
2.2.6.2.Biểu đồ trạng thái sản phẩm
Hình 2.2.6.2 Biểu đồ trạng thái sản phảm
2.2.6.3.Biểu đồ trạng thái bài viết, tin tức
Hình 2.2.6.3 Biểu đồ trạng thái bài viết, tin tức
Trang 352.2.6.4.Biểu đồ trạng thái đặt hàng
Hình 2.2.6.4 Biểu đồ trạng thái đặt hàng
2.2.6.5.Biểu đồ trạng thái Đơn hàng
Hình 2.2.6.5 Biểu đồ trạng thái đơn hàng
Trang 362.2.6.6.Biểu đồ trạng thái nhân viên
Hình 2.2.6.6 Biểu đồ trạng thái nhân viên
2.2.6.7.Biểu đồ trạng thái hóa đơn
Hình 2.2.6.7 Biểu đồ trạng thái hóa đơn
2.2.7 Biểu đồ tuần tự
2.2.7.1 Biểu đồ tuần tự UC_Dangnhap
Hình 2.2.7.1 Biểu đồ tuần tự UC_Dangnhap