Báo cáo đồ án ứng dụng website bán sách Bao gồm phân tích thiết kế biểu đồ phát triển, Biếu đồ hoạt động, Biểu đồ use caseBiểu đồ tuần tựBiểu đồ lớpThiết kế mô tả chi tiết về cơ sở dữ liệu Phân tích và thể hiện các tài liệu liên quan
Trang 1TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP TỐT NGHIỆP
TÊN ĐỀ TÀI
XÂY DỰNG WEBSITE BÁN SÁCH ONLINE
Đơn vị tập tốt nghiệp : Trung tâm công nghệ thông tin thuộc Công ty cổ phần Tổng công ty Truyền hình Cap Việt Nam
Cán bộ hướng dẫn : Nguyễn Văn Lực
Sinh viên thực hiện : Nguyễn Thị Trang
Hà Nội, tháng 03/2017
Trang 2LỜI CẢM ƠN
Trên thực tế không có sự thành công nào mà không gắn liền với những sự giúp đỡmọi người dù ít hay nhiều, dù trực tiếp hay gián tiếp Trong suốt thời gian học tập nhất làtrong quá trình thực tập, em đã nhận được rất nhiều sự quan tâm giúp đỡ nhiệt tình của …
Vì thời gian, điều kiện còn có hạn, em đã cố gắng rất nhiều để hoàn thành đợt thựctập tốt nghiệp, nhưng vẫn còn nhiều hạn chế và không thể tránh khỏi những thiếu sót,mong thầy cô và các bạn có những ý kiến đóng góp để em có thể hoàn thiện và phát triển
đề tài hơn
Em xin chân thành cảm ơn!
Sinh viên thực hiện Nguyễn Thị Trang
Trang 3MỤC LỤC
LỜI CẢM ƠN 2
DANH SÁCH CHỮ VIẾT TẮT 6
DANH MỤC HÌNH ẢNH 7
PHẦN MỞ ĐẦU 8
1 Tính cấp thiết của đề tài 8
2 Mục đích nghiên cứu 9
3 Đối tượng nghiên cứu và phạm vi nghiên cứu 9
4 Phương pháp nghiên cứu 11
CHƯƠNG 1: ĐỊNH NGHĨ BÀI TOÁN 12
1.1 Định nghĩa bài toán 12
1.2 Các ngôn ngữ lập trình 12
1.2.1 Ngôn ngữ HTML 12
1.2.2 Ngôn ngữ CSS 13
1.2.3 Ngôn ngữ lập trình PHP 14
1.2.4 Mô Hình MVC 15
1.3 Một số thư viện hỗ trợ 15
1.3.1 Thư viện Javascript 15
1.3.2 Thư viện BOOTSTRAP 16
1.3.3 Thư viện JQUERY 17
1.4 Cơ sở dữ liệu MySQL 18
1.4.1 Khái niệm cơ sở dữ liệu MySQL 18
1.4.2 Các thành phần của MySQL 19
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ WEBSITE BÁN SÁCH ONLINE 21
2.1 Danh sách các use case 21
2.1.1 Biểu đồ Usecase cho toàn hệ thống 21
2.1.2 Biểu đồ use case cho Đăng nhập 22
Trang 42.1.3 Biểu đồ use case cho Quản lý tài khoản 24
2.1.4 Biểu đồ use case cho Quản lý sản phẩm 25
2.1.5 Biểu đồ use case cho Quản lý thành viên 27
2.1.6 Biểu đồ use case cho quản lý nhà cung cấp 28
2.1.7 Biểu đồ use case cho quản lý đơn đặt hàng 30
2.1.8 Biểu đồ use case cho Báo cáo thống kê 31
2.1.9: Biểu đồ use case cho tìm kiếm sản phẩm 33
2.2 Biểu đồ tuần tự 34
2.2.1 Biểu đồ tuần tự cho ca đăng nhập 34
2.2.2 Biểu đồ tuần tự ca đăng kí 34
2.2.3 Biểu đồ tuần tự ca tìm kiếm 35
2.2.4 Biểu đồ tuần tự ca đặt hàng 35
2.2.5 Biểu đồ tuần tự ca 36
2.3 Mô hình cơ sở dữ liệu 36
a Danh sách các bảng trong CSDL 36
b db_ author (Bảng tác giả) 37
c db_categoty (bảng thể loại sách) 37
d db _config ( bảng cấu hình) 38
e db_contact (bảng thông tin liên hệ) 38
f db _customer (bảng khách hàng) 39
g db_district ( bảng địa chỉ theo quận) 39
h db _order (bảng đặt hàng) 40
i db _oderdetail (bảng chi tiết đặt hàng) 41
j db _product (bảng sản phầm) 41
k db _producer ( bảng nhà sản xuất) 42
l db _ province (bảng tác giả) 43
m db_slider (bảng Slider) 43
n db _user (bảng người dùng) 44
Trang 5o db _usergroup (bảng phân quền nhân viên) 45
Chương 3 : Thiết kế và xây dựng website bán sách online 46
3.1 Giao diện người dùng 46
3.1.1 Giao diện trang chủ 46
3.1.2 Danh mục sản phẩm 46
3.1.3 Giao diện xem chi tiết sản phẩm 47
3.1.4 Giao diện giỏ hàng 48
3.1.5 Giao diện nhập thông tin đặt hàng 48
3.1.6 Giao diện đặt hàng thàng công 49
3.1.7 Giao diện tài khoản người dùng, danh sách đơn hàng 50
3.2 Giao diện cho admin 50
3.2.1 Giao diện đăng nhập cho admin 50
3.2.2 Giao diện quản trị hệ thống 51
3.2.3 Giao diện quản lý danh sách sản phẩm 51
3.2.4 Giao diện thêm mới sản phẩm 52
3.2.5 Giao diện sửa thông tin sản phẩm 53
3.2.6 Giao diện xóa sản phẩm thành công 53
3.2.7 Giao diện quản lý danh sách đơn hàng 55
3.2.8 Giao diện thêm mới sản phẩm 55
3.2.9 Giao diện quản lý loại sản phẩm 55
3.2.10 Giao diện thêm mới loại sản phẩm 56
3.2.11 Giao diện danh sách nhà cung cấp 56
3.2.12 Giao diện danh sách tác giả 57
3.2.13 Giao diện thêm mới tác giả 57
TÀI LIỆU THAM KHẢO 58
Trang 8DANH MỤC HÌNH ẢNH
Hình 1.1: Giao diện A………
Trang 9PHẦN MỞ ĐẦU
1 Tính cấp thiết của đề tài
Công nghệ thông tin là một trong những lĩnh vực bức thiết không thể thiếu trongguồng máy kinh tế của nhiều nước trên thế giới đặc biệt là những nước đang phát triểnnhư Việt Nam hiện nay
Việc cập nhập thông tin là rất cần thiết với nhà quản lý, nhà kinh doanh trong lĩnh vựcnày Để quảng bá sản phẩm nhiều nhà kinh doanh của các công ty lớn đã có chiến lượcquảng bá sản phẩm trên các thông tin đại chúng như báo, radio, TV trong đó quảng básản phẩm trên website là một trong những giải pháp hữu hiệu nhất.Đây là hình thứctruyền tải thông tin nhanh chóng, hiệu quả và chi phí thấp.Những khách hàng có nhucầu mua cho mình một cuốn sách có thể trực tiếp mua thông qua website trực tuyến,không mất nhiều thời gian mà khách hàng đã có thể sở hữu cuốn sách mà mình yêuthích
Với nhiều thành quả quan trọng, công nghệ thông tin đã được ứng dụng rộng rãi trongnhiều lĩnh vực, trở thành một trong những yếu tố quan trọng nhất của sự phát triểnkinh tế - xã hội, an ninh - quốc phòng Việc đẩy mạnh ứng dụng công nghệ thông tin
sẽ làm thay đổi tác phong làm việc, nâng cao năng suất lao động, nâng cao dân trí,…Chính vì thế, công nghệ thông tin sẽ trở thành nền kinh tế mũi nhọn của nước ta trongnhững năm tới đây
Qua quá trình được học trên lớp và tìm hiểu về môn học lập trình ASP.NET nhóm em
đã áp dụng những kiến thức đã học để xây dựng hệ thống “Website bán sách online”với sự hướng dẫn tận tình của giáo viên hướng dẫn Ngoài ra làm đồ án tốt nghiệp nàycũng giúp cho các thành viên trong nhóm nâng cao khả năng lập trình và rút đượcnhiều kinh nghiệm cho các trang web sau Do kiến thức và kinh nghiệm lập trình, thiết
Trang 10kế còn hạn chế nên phần mềm của nhóm em còn có nhiều thiếu xót Rất mong được sựđóng góp của thầy cô và các bạn để phần mềm của nhóm được hoàn thiện hơn nữa.
Thực hiện thao tác tìm kiếm nhanh, hiệu quả bên cạnh đó còn giúp cho khách hàngtiết kiệm được thời gian, tiết kiệm được chi phí của các doanh nghiệp
Có chức năng tiện lợi đó là chức năng giỏ hàng, thống kê số lượng mặt hàng màkhách hàng chọn để thực hiện giao dịch mua bán, khách hàng có thể thay đổi số lượnghàng cần mua
Theo dõi đơn hàng của mình, gửi ý kiến đóng góp, phản hồi lại cho hệ thống
Giúp người quản lý:
Trong vấn đề quản lý khách hàng, lượng người truy cập, quản lý thông tin cũngnhư quản lý về nguồn tìm kiếm của khách hàng
Thêm, sửa, xóa thông tin sản phẩm và thông tin khách hàng, kiểm tra và xử lý đơnhàng
3 Đối tượng nghiên cứu và phạm vi nghiên cứu
Đối tượng nghiên cứu gồm có:
- Người sử dụng: là tất cả những người yêu sách, có sở thích, thói quen đọc sách
Trang 11- Người cung cấp thông tin: Quản lý và nhân viên tại cửa hàng bán sách
- Tài liệu
+ Giáo trình nhập môn UML
+ Ví dụ và bài tập Visual Basic.Net
+ Giáo trình lập trình hướng đối tượng
+ Giáo trình lập trình Web
+ Giáo trình lập trình cơ sở dữ liệu(SQL server)
Phạm vi nghiên cứu:
+ Các chức năng chính của chương trình:
Bán sách: Sau khi người dùng truy cập vài hệ thống họ có thể xem thông tin vềcác loại sách, thêm vào giỏ hàng những cuốn sách mà họ thấy ưng ý, phù hợpvới yêu cầu cầu của họ
Giỏ hàng: Khi người dùng hệ thống đã tìm được những cuốn sách phù hợp vớinhu cầu của mình học có thể cho vào giỏ hàng Giỏ hàng là nơi người dùng cóthể xem lại các cuốn sách mà mình đã lựa chọn mà không phải mất công tìm
kiếm lại Đông thời ở đây họ có thể đặt mua sách, thêm, sửa, xóa sách trong giỏ
hàng và biết được số tiền mà họ phải trả cho số sách đó
Tìm kiếm: Chức năng này giúp người dùng có thể tìm kiếm sách nhanh chóngkhi mà họ đã định hướng mình cần loại sách nào…
Đăng nhập, đăng kí: Hai chức năng này giúp người dùng có thể đặt mua đượcsách của hệ thống
Quản trị: Cập nhật, sửa, xóa, thêm, bổ sung các thông tin về sách Quản lýngười dùng, quản lý việc bán sách, mua sách, giao hàng, liên hệ, tổng hợp ýkiến của khách hàng…
Trang 124 Phương pháp nghiên cứu
- Tham khảo các website bán hàng trên mạng
- Tìm kiếm tài liệu trên các kênh youtube, các website liên quan đến nội dung nghiêncứu
- Tìm hiểu về công cụ hỗ trợ lập trình và cách sử dụng
- Thu thập các tài liệu liên quan đến nghiệp vụ quản lý website bán sách
- Vận dụng vào việc thiết kế và xây dựng ứng dụng web
Kết cấu của báo cáo
Trang 13
CHƯƠNG 1: ĐỊNH NGHĨ BÀI TOÁN
1.1 Định nghĩa bài toán
Hệ thống mua bán và quản lý sách là một website cung cấp cho người sử dụng,nhà quản lý những chức năng cần thiết để tiến hàng giao dịch, quản lý sự hoạt động cũngnhư theo dõi tình hình phát triển của nhà sách Đối với khách hàng, hệ thống cho phépxem thông tin về sản phẩm của cửa hàng, tìm kiếm Sau khi đăng khí làm thành viên,khách hàng có thể chọn sản phẩm trên website đưa vào giỏ hàng và tiết hàng đặt muahàng trực tiếp trên website, đồng thời chọn địa điểm giao hàng Sau khi thực hiện xongkhách hàng chọn “Đặt hàng” để hoàn tất việc đặt hàng
Đối với các nhân viên, người tiếp nhận đơn hàng do người quản lý chuyển đến.thực hiện việc giao hàng và xác nhận giao hoàn tất
1.2 Các ngôn ngữ lập trình
1.2.1 Ngôn ngữ HTML
HTML được ví như là bộ xương của một giao diện website, dù nó là dành cho
WordPress hay bất cứ website nào “Bộ xương” này sẽ giúp chúng ta xác định bố cục trênmỗi website và đánh dấu lại các phần đó bằng các thẻ (tag) nhất định, sau đó nó sẽ tự xác định mỗi đối tượng được đánh dấu mang một vài trò riêng trong website
HTML là từ viết tắt của HyperText Markup Language, nghĩa là ngôn ngữ đánh dấu siêu văn bản
Hypertext (siêu văn bản): là một đoạn text bất kì nhưng có chứa link đến một
nguồn thông tin khác (như một đoạn văn bản khác, một địa chỉ website, hình ảnh, âm thanh…)
HTML được tương thích với mọi hệ điều hành cùng các trình duyệt của nó Khả năng dễ học, dễ viết là một ưu điểm của HTML không những vậy việc soạn thảo đòi hỏi hết sức đơn giản, chúng ta có thể dùng word, notepad hay bất cứ một trình soạn thảo văn bản nào để viết và chỉ cần lưu với định dạng “.html “ hoặc “.htm” là đã có thể tạo ra một
Trang 14file chứa HTML Hiện nay, phiên bản mới nhất của HTML là HTML5 với nhiều tính năng ưu việt so với các phiên bản cũ HTML cải tiến khá nhiều đặc biệt hỗ trợ mạnh mẽ các phần tử multimedia mà không cần các plugin Một tập tin HTML bao gồm trong đó làcác đoạn văn bản HTML, được tạo lên bởi các thẻ HTML HTML5 nói chung mạnh mẽ hơn nhiều không chỉ về tốc độ và độ thích ứng cao mà chính là khả năng hỗ trợ API (Application Programming Interface - giao diện lập trình ứng dụng) và DOM (Document Object Model – các đối tượng thao tác văn bản).
1.2.2 Ngôn ngữ CSS
Nếu HTML được xem như là bộ xương của một website thì CSS chính là da thịt được đắp lên bộ xương đó, mục đích đơn giản là cho website trông đẹp đẽ và chuyên nghiệp hơn
CSS là từ viết tắt của Cascade Style Sheet, là ngôn ngữ giúp trình duyệt hiểu được
các thiết lập định dạng và bố cục cho trang web CSS cho phép bạn điều khiển thiết kế của nhiều thành phần HTML chỉ với duy nhất 1 vùng chọn CSS Điều này giúp giảm thiểu thời gian thiết kế và chỉnh sửa, khi bạn có thể tách biệt được cấu trúc (HTML) và định dạng (CSS)
CSS có cấu trúc đơn giản và sử dụng các từ tiếng anh để đặt tên cho các thuộc tính.CSS khi sử dụng có thể viết trực tiếp xen lẫn vào mã HTML hoặc tham chiếu từ một file css riêng biệt Hiện nay CSS thường được viết riêng thành một tập tin với mở rộng là
“.css” Chính vì vậy mà các trang web có sử dụng CSS thì mã HTML sẽ trở nên ngắn gọn hơn Ngoài ra có thể sử dụng một tập tin CSS đó cho nhiều website tiết kiệm rất nhiều thời gian và công sức Một đặc điểm quan trọng đó là tính kế thừa của CSS do đó sẽ giảm được số lượng dòng code mà vẫn đạt được yêu cầu Tuy nhiên, đối với CSS thì các trình duyệt hiểu theo kiểu riêng của nó Do vậy, việc trình bày một nội dung trên các trình duyệt khác nhau là không thống nhất CSS cung cấp hàng trăm thuộc tính trình bày dành
Trang 15cho các đối tượng với sự sáng tạo cao trong kết hợp các thuộc tính giúp mang lại hiệu quả.
- Ưu điểm:
+ Mô hình lập trình đơn giản
+ Hỗ trợ ADO (Active Data Object), FSO (File System Object)
+ ASP cùn hỗ trợ nhiều ngôn ngữ như : VBscrip, Javascrip
- Nhược điểm:
+ Code ASP lẫn với html nên khó khan trong việc tìm lỗi
+ Không hỗ trợ cơ chế cache
+ Tốc độ xử lý còn chậm
1.2.3 Ngôn ngữ lập trình PHP
PHP là viết tắt của từ Hypertext Preprocessor Ngôn ngữ này được phát triển từnăm 1994 và cho đến nay đã được nhiều người sử dụng để phát triển các ứng dụng phầnmềm thông qua lập trình web Đặc điểm của ngôn ngữ lập trình này là sử dụng mã nguồn
mở, dễ dàng nhúng vào HTML và tích hợp với web
Ưu điểm của ngôn ngữ lập trình PHP là cú pháp đơn giản, tốc độ xử lý nhanh, tínhcộng đồng cao Chính vì vậy mà lập trình PHP được sử dụng chủ yếu để thiết kế web Đểtạo ra các ứng dụng web bằng ngôn ngữ PHP, người lập trình phải sử dụng các dòng lệnh
cơ bản
Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML Do được tối
ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống ngôn ngữ lập trình C
và ngôn ngữ lập trình Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn sovới các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình webphổ biến nhất thế giới.Một tập tin PHP có phần mở rộng *.php, nó có thể chứa các vănbản, mã nguồn HTML, CSS, Javascript, Jquery và đương nhiên có thể chứa mã nguồnPHP Đối với các trang PHP khi có yêu cầu xem trang web thì Server sẽ tiến hành phát
Trang 16sinh trang web đó từ mã nguồn PHP sang mã nguồn HTML, sau đó mới chuyển mãnguồn đó về trình duyệt web để người dùng xem Vì các trình duyệt web không thể đọcđược các mã nguồn PHP mà chỉ đọc được các mã nguồn HTML.
1.2.4 Mô Hình MVC
MVC (viết tắt của Model-View-Controller) là một mẫu kiến trúc phần mềm để tạo lập giao diện người dùng trên máy tính MVC chia một ứng dụng thành ba phần tươngtác được với nhau để tách biệt giữa cách thức mà thông tin được xử lý nội hàm và phần thông tin được trình bày và tiếp nhận từ phía người dùng
Khi sử dụng đúng cách, mẫu MVC giúp cho người phát triển phần mềm cô lậpcácnguyên tắc nghiệp vụ và giao diện người dùng một cách rõ ràng hơn Phần mềm phát triểntheo mẫu MVC tạo nhiều thuận lợi cho việc bảo trì vì các nguyên tắc nghề nghiệp và giaodiện ít liên quan với nhau
Trong mẫu Model-View-Controller, mô hình (model) tượng trưng cho dữ liệu củachương trình phần mềm Tầm nhìn hay khung nhìn (view) bao gồm các thành phần của giao diện người dùng Bộ kiểm tra hay bộ điều chỉnh (controller) quản lý sự trao đổi giữa
dữ liệu và các nguyên tắc nghề nghiệp trong các thao tác liên quan đến mô hình
1.3 Một số thư viện hỗ trợ
1.3.1 Thư viện Javascript
JavaScript là một ngôn ngữ lập trình đa nền tảng (cross-platform), ngôn ngữ lập
trình kịch bản, hướng đối tượng JavaScript là một ngôn ngữ nhỏ và nhẹ (small and
lightweight) Khi nằm bên trong một môi trường (host environment), JavaScript có thể kết nối tới các object của môi trường đó và cung cấp các cách quản lý chúng (object)
JavaScript chứa các thư viện tiêu chuẩn cho các object, ví dụ như: Array, Date,
và Math, và các yếu tố cốt lõi của ngôn ngữ lập trình như: toán tử (operators), cấu trúc
Trang 17điều khiển (control structures), và câu lệnh JavaScript có thể được mở rộng cho nhiều mụcđích bằng việc bổ sung thêm các object
Ngôn ngữ này được dùng rộng rãi cho các trang web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối tượng nằm sẵn trong các ứng dụng Giống Java, JavaScript có cú pháp tương tự ngôn ngữ lập trình C, nhưng nó gần với Self hơn Java “.js”
là phần mở rộng thường được dùng cho tập tin mã nguồn JavaScript
1.3.2 Thư viện BOOTSTRAP
Bootstrap là một Framework có chứa HTML, CSS, JAVASCRIPT, Framework trong tiếng việt có nghĩa là “khuôn khổ” giúp tiết kiệm được thời gian, công sức hơn nữa việc xây dựng hai teamplate cho giao diện Desktop và Mobile đã lỗi thời thay vào đó là Responsive Responsive sẽ giúp website của bạn hiển thị tương thích với mọi kí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ại mà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ệm rấ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 áp dù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 code cho 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ảng giao diện của chính mình Bootstrap cung cấp cho bạn hệ thống Grid System mặc định bao gồm 12 bột và độ rộng 940px Bạn có thể thay đổi, nâng cấp và phát triển dựa trên nền tảng này
- 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ển giao diện website đang rất được ưu chuộng trên thế giới
Nhược điểm của Bootstrap.
Trang 18- Tính kém phổ biến: Bootstrap không phải là ứng dụng web phổ biến nên để tìm được một tổ chức, cá nhân thành thạo bootstrap để có thể sử dụng với nền tảng lập trình web không nhiều.
- Sản phẩm nặng, tốc độ tối ưu chưa cao: nên nếu dự án của bạn đòi hỏi sản phẩm nhẹ thì việc sử dụng bootstrap sẽ là cả một gánh nặng cho web
- Chưa hoàn thiện: Bootstrap chưa đầy đủ các thư viện cần thiết Các phát triển chưa thể tạo ra một framework riêng hoàn hảo, do đó một số trang web vẫn phải dùng phiên bản dành riêng cho mobile
- Nhiều code thừa: Không thể phủ nhận rằng Bootstrap có rất nhiều ưu điểm khi nó cũng cấp gần như đầy đủ những tính năng cơ bản của một trang web responsive hiện đại Tuy nhiên, mặt trái của việc này là website của bạn sẽ phải tải thêm rất nhiều dòng code không cần thiết khi mà bạn chỉ cần chưa đến 10% những gì
Bootstrap cung cấp
- Bootstrap không khuyến khích sáng tạo: Chỉ cần nhét Bootstrap vào themes sẵn
có, gọi ra cái class từ stylesheet và thế là bạn đã có một trang web responsive trông cũng ổn ổn Sự tiện dụng và dễ dàng của Bootstrap nhiều khi sẽ khuyến khích tính lười sáng tạo, vốn luôn thường trực trong mỗi chúng ta Kết quả là, chúng ta thướng thoả hiệp những gì mình thực sự muốn cho website để đổi lấy sự tiện dụng và tiết kiệm thời gian mà Bootstrap mang lại
1.3.3 Thư viện JQUERY
JQuery là một thư viện kiểu mới của JavaScript, được tạo bởi John Resig vào năm
2006 với một phương châm tuyệt vời: Write less, do more - Viết ít hơn, làm nhiều hơn.JQuery làm đơn giản hóa việc truyền tải HTML, xử lý sự kiện, tạo hiệu ứng động vàtương tác Ajax Với jQuery, khái niệm Rapid Web Development đã không còn quá xa lạ.JQuery là một bộ công cụ tiện ích JavaScript làm đơn giản hóa các tác vụ đa dạngvới việc viết ít code hơn Dưới đây liệt kê một số tính năng tối quan trọng được hỗ trợ bởijQuery:
Trang 19 Thao tác DOM − jQuery giúp dễ dàng lựa chọn các phần tử DOM để traverse (duyệt) một cách dễ dàng như sử dụng CSS, và chỉnh sửa nội dung của chúng
bởi sử dụng phương tiện Selector mã nguồn mở, mà được gọi là Sizzle
Xử lý sự kiện − jQuery giúp tương tác với người dùng tốt hơn bằng việc xử lý các
sự kiện đa dạng mà không làm cho HTML code rối tung lên với các EventHandler
Hỗ trợ AJAX − jQuery giúp bạn rất nhiều để phát triển một site giàu tính năng vàphản hồi tốt bởi sử dụng công nghệ AJAX
Hiệu ứng − jQuery đi kèm với rất nhiều các hiệu ứng đa dạng và đẹp mắt mà bạn
có thể sử dụng trong các Website của mình
Gọn nhẹ − jQuery là thư viện gọn nhẹ - nó chỉ có kích cỡ khoảng 19KB (gzipped)
Được hỗ trợ hầu hết bởi các trình duyệt hiện đại − jQuery được hỗ trợ hầu hết bởicác trình duyệt hiện đại, và làm việc tốt trên IE 6.0+, FF 2.0+, Safari 3.0+,Chrome và Opera 9.0+
Cập nhật và hỗ trợ các công nghệ mới nhất − jQuery hỗ trợ CSS3 Selector và cúpháp XPath cơ bản
1.4 Cơ sở dữ liệu MySQL
1.4.1 Khái niệm 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ới Apache,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ộtcách truy xuất và mã lệnh tương tự với ngôn ngữ SQL Nhưng MySQL không bao quáttoà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 truyxuấ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ácbà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ính bảomật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet MySQL
Trang 20miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ MySQL là một trongnhững ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng ngôn ngữ truy vấn
có cấu trúc (SQL) MySQL đang được sử dụng cho nhiều công việc kinh doanh từ nhỏ tớilớ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à 4GB( 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ập trình viênsửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể của họ
1.4.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ác bả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
Trang 21Lấ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óa hoặctẩ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
Trang 22CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ WEBSITE BÁN SÁCH ONLINE
2.1 Danh sách các use case
2.1.1 Biểu đồ Usecase cho toàn hệ thống
Biểu đồ usecase tổng quát gồm có 2 actor là khách hàng và người quản trị hệ thống
- Người quản trị hệ thống (admin) thực hiện các công việc sau trong hệ thống:+ Quản lý tài khoản
+ Quản lý sản phẩm: quản lý nhập sách, quản lý việc cập nhật, quản lý việc xoásách
+ Quản lý khách hàng, thành viên
+ Quản lý hoá đơn: Quản lý hoá đơn nhập, quản lý hoá đơn bán
+ Thống kê: Thống kê đầu sách, thống kê doanh thu, thống kê hàng tồn, thống kêhàng mới, thống kê nhà cung cấp, thống kê thành viên, thống kê đầu sách
+ Quản lý nhà cung cấp: Thêm, sửa, xoá
- Khách hàng khi tương tác với trang web bán sách thì có thể thực hiện các công việcsau đây:
+ Đăng ký là thành viên
+ Đăng nhập vào trang web
+ Tìm kiếm sản phẩm
+ Đặt hàng qua mạng
+ Gửi thông tin yêu cầu tới nhà sách
+ Thực hiện thanh toán qua mạng
Trang 23Hình 2.1: Biểu đồ use case cho hệ thống
2.1.2 Biểu đồ use case cho Đăng nhập
Hình 2.2: Biểu đồ use case cho Đăng nhập
Mô tả:
Bảng 2.1: Bảng mô tả cho use case đăng nhập
Tên use case Đăng nhập
Trang 24Mô tả Cho phép người dùng đăng nhập vào hệ thống
1 Truy cập vào trang web
3 Nhập thông tin
4 Nhấn nút đăng nhập
lên server kiểm tra:
+ Hợp lệ: hiện thị thông báo thành công và đưa ra màn hình chức năng cho người dung
báo, yêu cầu nhập lại thông tin
Kết quả Đăng nhập thành công vào hệ thống
2.1.3 Biểu đồ use case cho Quản lý tài khoản
Hình 2.2: Biểu đồ use case cho Quản lý tài khoản.
Mô tả:
Bảng 2.2: Bảng mô tả cho use case quản lý tài khoản
Tên use case Quản lý tài khoản
Mô tả Cho phép người dung thay đổi mật khẩu, lấy lại mật khẩu khi
quên hay tạo 1 tài khoản khác mới(dành cho người quản lý)
Trang 25chức năng quản lý tài khoản
Luồng sự kiện
chính
1 Người quản lý chọn đến tài khoản muốn
(1) sửa (2) xóa
tin về tài khoản vừa chọnvới tên người dung (không được chỉnh sửa)(2) Hiển thị thông báo xóa tài khoản
3 (1) Điền vào nội dung
muốn thay thế và nhấn hoàn thành
nội dung tài khoản vừa được thao tác
Luồng thay thế
Kết quả
2.1.4 Biểu đồ use case cho Quản lý sản phẩm
Hình 2.3: Biểu đồ use case cho Quản lý sản phẩm
Mô tả:
Bảng 2.3: Bảng mô tả cho use case quản lý sản phẩm
Trang 26Tên use case Quản lý sản phẩm
Mô tả Cho phép xem, thêm, sửa, xóa, tìm kiếm thông tin sản phẩm
trong hệ thống
Điều kiện trước Người quản lý đã đăng nhập thành công vào hệ thống và chọn
chức năng quản lý sản phẩm
Luồng sự kiện chính:
Người quản lýchọn kiểu tác động: thêm, sửa, xóa, tìm kiếm thông tin sản phẩm
+Thêm thông tin sản phẩm: chọn thêm sản phẩm, hệ thống hiển thị giao diện nhập
thông tin sản phẩm và danh sách sản phẩm, người sử dụng nhập thông tin sản phẩm, nếu thành công hệ thống đưa ra thông báo, nếu sai thực hiện luồng thay thế A1, lưu thông tin vào danh sách sản phẩm
+ Sửa thông tin sản phẩm: hệ thống hiển thị danh sách sản phẩm, chọn sản phẩm cần sửa, nhập các thông tin cần thay đổi, nếu việc thay đổi thông tin thành công hệ thống sẽ đưa ra thông báo, nếu sai thì thực hiện dòng rẽ nhánh A1, lưu thông tin danh sách sản phẩm
+ Xóa thông tin sản phẩm: hệ thống hiển thị danh sách sản phẩm, chọn sản phẩm cần xóa, hệ thống hiện thị thông báo người dung chắc chắn muốn xóa, người dung chọn xóa, hệ thống xóa dữ liệu trong CSDL và trả lại danh sách đã xóa thứ tự đã xóa
+Tìm kiếm sản phẩm: nhập thông tin tìm kiếm vào ô tìm kiếm trong danh sách, hệ
thống sẽ hiển thị danh sách tìm kiếm được
Luồng thay thế A1: hệ thống thông báo việc nhập dữ liệu không hợp lệ, nhập lại
thông tin, quay lại thực hiện lại của dòng sự kiện chính
Kết quả Các thông tin về sản phẩm được cập nhật trong cơ sở dữ liệu và
được hiển thị trên trang danh sách
2.1.5 Biểu đồ use case cho Quản lý thành viên
Hình 2.4: Biểu đồ use case cho Quản lý thành viên
Trang 27Mô tả:
Bảng 2.4: Bảng mô tả cho use case quản lý thành viên
Tên use case Quản lý thành viên
Mô tả Cho phép xem, xóa, tìm kiếm thông tin thanh viên trong hệ
thống
Điều kiện trước Người quản lý đã đăng nhập thành công vào hệ thống và chọn
chức năng quản lý sản phẩm
Luồng sự kiện chính:
Người quản lýchọn kiểu tác động: thêm, tìm kiếm thông tin thanh viên
+ Xem danh sách thành viên: người dung chọn mục danh sách thành viên, hệ thống lấy
dữ liệu trong CSDL và hiển thị lên màn hình danh sách
+ Xóa thông tin thành viên: hệ thống hiển thị danh sách thành viên, chọn thành viên cầnxóa, hệ thống hiện thị thông báo người dung chắc chắn muốn xóa, người dung chọn xóa, hệ thống xóa dữ liệu trong CSDL và trả lại danh sách đã xóa thứ tự đã xóa
+ Tìm kiếm thành viên: nhập thông tin tìm kiếm vào ô tìm kiếm trong danh sách, hệ thống sẽ hiển thị danh sách tìm kiếm được
Luồng thay thế + Ô tìm kiếm trống, hệ thống yêu cầu người dùng nhập nội dung
trước khi muốn tìm kiếm
Kết quả Các thông tin về thành viên được cập nhật trong cơ sở dữ liệu và
được hiển thị trên trang danh sách
2.1.6 Biểu đồ use case cho quản lý nhà cung cấp
Hình 2.5: Biểu đồ use case cho Quản lý nhà cung cấp
Mô tả: