Đồ án Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực

MỤC LỤC

CHƯƠNG 1 TỔNG QUAN.7

1.1 ĐẶT VẤN ĐỀ.7

1.1.1 Hiện trạng chung.7

1.1.2 Lý do thực hiện đềtài.8

1.2 NHIỆM VỤCỦA ĐỀTÀI.9

1.3CẤU TRÚC CỦA ĐỒÁN.10

1.4 YÊU CẦU CÁC CHỨC NĂNG CHÍNH.11

1.4.1 Đối với ban quản trị.11

1.4.2 Đối với Nhà cung cấp.11

1.4.3 Đối với khách hàng.11

1.5 YÊU CẦU PHI CHỨC NĂNG.11

1.6HẠN CHẾCỦA HỆTHỐNG.12

1.7 YÊU CẦU KỸTHUẬT.12

1.7.1 Phần cứng.12

1.7.2 Phần mềm.12

1.7.2.1 Đối với người phát triển phần mềm.12

1.7.2.2 Đối với máy chủtriển khai ứng dụng.12

CHƯƠNG 2 TỔNG QUAN VỀAJAX.13

2.1LỊCH SỬAJAX.13

2.2 ỨNG DỤNG CỦA AJAX.14

2.3 KHÁI NIỆM AJAX.15

2.4 MÔ HÌNH HOẠT ĐỘNG CỦA AJAX.17

2.5 CÁC CÔNG NGHỆTRONG AJAX.19

2.5.1 Công nghệtrong AJAX – Javascript.19

2.5.2 Đặc tính của ngôn ngữjavascript.20

2.5.3 Built-in Object trong javascript.21

2.5.4 Các đối tượng được cung cấp bởi môi trường Netscape.21

2.5.5 Các đối tượng do người lập trình xây dựng.21

2.5.6 Các cú pháp cơbản của lệnh :.22

2.5.7 Sựkiện trong JavaScript.25

2.5.8 Cascading Style Sheet – CSS.26

2.5.9 Các ưu điểm của CSS trong thiết kếweb.27

2.5.10 Tổng quan XML.28

2.5.10.1 Khái niệm.28

2.5.10.2 Lịch sử.28

2.5.10.3 Đặc điểm.28

2.5.10.4 Ứng dụng của XML.30

CHƯƠNG 3 GIẢI QUYẾT BÀI TOÁN.35

3.1 PHÂN TÍCH THIẾT KẾHỆTHỐNG THÔNG TIN.35

3.1.1 Sơ ĐồUse Case.35

3.1.1.1 Use Case Nhà Cung Cấp.35

3.1.1.2 Sơ ĐồUse Case Thực Khách Và HệThống.36

3.1.1.3 Sơ ĐồUse Case Ban Quản Trị.36

3.1.1.4 Sơ đồUse Case Khách Hàng Vãng lai.38

3.1.1.5 Sơ đồUse Case Của Toàn HệThống.39

3.1.2 Đặc tảUse case.39

3.2SƠ ĐỒTRÌNH TỰCÁC CHỨC NĂNG CHÍNH.41

3.2.1 Sequence diagram cho Use Case Login.41

3.2.2 Sequence diagram cho Use Case Đăng ký thành viên.42

3.2.3 Sequence diagram cho Use Case Cập nhật Thông Tin Nhà Cung Cấp.43

3.2.4 Sequence diagram Use Case Đăng Bài Giới Thiệu Món Ăn.44

3.2.5 Sequence diagram cho Use Case Tìm kiếm Món Ăn, Nhà Hàng, Tin tức.45

3.3SƠ ĐỒTIẾN TRÌNH.46

3.3.1 Sơ ĐồTiến Trình Của Nhà Cung Cấp.46

3.3.2 Sơ ĐồTiến Trình Của Món Ăn.46

3.3.3 Sơ ĐồTiến Trình Của Thông Tin Phản Hồi.47

3.4 MÔ HÌNH THỰC THỂKẾT HỢP.48

3.5 MÔ HÌNH DỮLIỆU QUAN HỆ.48

3.5.1 Bảng PhanLoaiNCC.48

3.5.2 Bảng KhuVucNCC.49

3.5.3 Bảng NhaCungCap.49

3.5.4 Bảng PhanLoaiMonAn.50

3.5.5 Bảng MonAn.50

3.5.6 Bảng PhanLoaiTinTuc.51

3.5.7 Bảng TinTuc.51

3.5.8 Bảng BanQuanTri.52

3.5.9 Bảng PhanHoiTuThucKhach.52

3.6 QUAN HỆGIỮA CÁC BẢNG.54

3.7 Ràng buộc toàn vẹn.54

3.7.1 Ràng buộc toàn vẹn trên một bảng.54

3.7.2 Ràng buộc toàn vẹn vềmiền giá trị.57

3.7.3 Ràng buộc liên bộ.59

3.7.4 Ràng buộc toàn vẹn có bối cảnh gồm nhiều quan hệ.61

3.7.4.1 Ràng buộc toàn vẹn vềphụthuộc tồn tại.61

3.7.4.2 Ràng buộc liên thuộc tính , liên quan hệ.63

3.8DẠNG CHUẨN.65

3.9SƠ ĐỒWEBSITE.69

3.9.1Sơ ĐồCho Người Dùng.69

3.9.2 Sơ ĐồCho Ban Quản Trị.70

CHƯƠNG 4 KẾT QUẢTHỰC HIỆN.71

4.1 NHỮNG TRANG ỨNG DỤNG AJAX.71

4.1.1 Trang của ban quản trị.71

4.1.2 Trang khi xác lập lại mật khẩu cho quản trịkhác.71

4.1.3 Trang đăng kí.72

4.1.4 Trang đổi mật khẩu của Nhà cung cấp.73

4.1.5 Trang quy định khi đăng ki.74

4.1.6 Xác lập lại mật khẩu cho nhà cung cấp.75

4.2 GIAO DIỆN CỦA CHƯƠNG TRÌNH.75

4.2.1 Trang chủ.75

4.2.2 Chi tiết món ăn.77

4.2.3 Trang admin.78

4.2.4 Góp ý tới nhà cung cấp.78

4.2.5 Giới thiệu thông tin nhà cung cấp.79

4.2.6 Trang đổi mật khẩu của Nhà cung cấp.79

4.3CÀI ĐẶT VÀ THỬNGHIỆM.81

4.3.1 Chuẩn bị.81

4.3.2 Thực hiện.81

CHƯƠNG 5 ĐÁNH GIÁ VÀ KẾT LUẬN.82

5.1 ĐÁNH GIÁ.82

5.2HƯỚNG PHÁT TRIỂN.82

TÀI LIỆU THAM KHẢO.83

pdf83 trang | Chia sẻ: netpro | Lượt xem: 2755 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Đồ án Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ợc đ kí tự. - Thông dịch nghĩa là các mã nguồn không được biên dịch thành các đoạn mã nhị phân có th và mã nguồn này được truyền trực tiếp qua Internet tới web browser. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 19 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu - g, date và - oi là các phương tiện - jax, JavaScript là chất kết dính các thành phần lại với nhau. 2.5 của nó gated) vào tập tin HTML chuẩn. Khi file được l ƒ Đơn giản. tượng (Object Oriented). c tính quan trọng của ngôn ngữ JavaScript là khả năng t). Các Object này cho phép người lập Trong Jav Đa năng nghĩa là ngôn ngữ này thích hợp để lập trình theo hầu hết các thuật toán và các tác vụ. JavaScript cơ bản hỗ trợ các kiểu số - number, strin time, array, các biểu thức toán học được xử lí trong văn bản, và các hàm toán học như các hàm lượng giác và bộ tạo số ngẫu nhiên. Hoàn toàn có thể định nghĩa cấu trúc một đối tượng bằng JavaScript, điều này mang đến nguyên lý cơ bản cho lập trình và để viết lên nhưng đoạn mã phức tạp. Trong môi trường trình duyệt web, các chức năng cơ bản của trình duyệt, gồm CSS, DOM, và các đối tượng XMLHttpRequest, được c của JavaScript, cho phép các nhà phát triển điều khiển các trang ở các mức độ khác nhau. Trong chồng công nghệ (tức là các công nghệ sử dụng liệt kê từ trên xuống dưới) của A .2 Đặc tính của ngôn ngữ javascript Javascript là một ngôn ngữ thông dịch (interpreter), chương trình nguồn được nhúng (embedded) hoặc tích hợp (inte oad trong Browser (có support cho JavaScript), Browser sẽ thông dịch các Script và thực hiện các công việc xác định. Chương trình nguồn JavaScript được thông dịch trong trang HTML sau khi toàn bộ trang được load nhưng trước khi trang được hiển thị. Javascript là một ngôn ngữ có đặc tính: ƒ Động (Dynamic). ƒ Hướng đối ƒ Một trong những đặ tạo và sử dụng các đối tượng (Objec trình sử dụng để phát triển ứng dụng. aScript, các Object được nhìn theo 2 khía cạnh: SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 20 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Các Object đã tồn tại chia làm 2 kiểu: ƒ Các Object của JavaScript (JavaScript Built-in Object). Các O c uilt-in Object để cung cấp các thông tin về sự hiện h được cung cấp bởi môi trường Netscape avaScript tương tác với file HT ƒ Các đối tượng được cung cấp bởi môi trường Netscape. bje t do người lập trình xây dựng. 2.5.3 Built-in Object trong javascript JavaScript cung cấp 1 bộ các B ành của các đối tượng được load trong trang Web và nội dung của nó.Các đối tượng này bao gồm các phương pháp (Method) làm việc với các thuộc tính (Properties) của nó. 2.5.4 Các đối tượng Netscape Navigator cung cấp các đối tượng cho phép J ML, các đối tượng này cho phép chúng ta điều khiển việc hiển thị thông tin và đáp ứng các sự kiện trong môi trường Navigator (điều hướng). Ví dụ : Đối tượng mô tả ƒ Window: Cung cấp các phương pháp và các tính chất cho cửa sổ hiện hành ƒ việc với các địa chỉ ƒ tory cung cấp thông tin về các danh sách cũ và có ƒ sử dụng nhiều nhất .Nó chứa đựng 2.5.5 Cá Properties) Cú ph h). của trình duyệt,bao gồm các đối tượng cho mỗi frame. Location: Cung cấp các tính chất và phương pháp làm URL hiện hành được mở. History: Các đối tượng his thể giới hạn sự tương tác với danh sách. Document: Đây là một đối tượng được các đối tượng,tính chất và các phương pháp làm việc với các thành phần của tài liệu như các: form, link, anchor, applet. c đối tượng do người lập trình xây dựng Định nghĩa thuộc tính của đối tượng: (Object áp : Object-name.Property-name (tên đối tượng.tên đặc tín SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 21 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Ví dụ : Một đối tượng airplane có các thuộc tính như sau: ƒ Airplane.model ƒ Airplane.price ƒ Airplane.seating d Thêm ho đối tượng (Method to Object) : ây dựng phương pháp để dụng t a đối tượng: ượng của JavaScript ta phải tạo một instance cho đố p cơ bản của lệnh : phát biểu,các toán tử và các biểu thức trên cùng m BR>"); có thể được liên kết với nhau và được bao bởi { } cument.writeln("Does It work"); ƒ Airplane.maxspee ƒ Airplane.fuel các phương pháp c Sau khi đã có các thông tin về airplane ta tiếp tục x hông tin này. Ví dụ bạn muốn in ra mô tả của airplane hoặc tính toán khoảng cách tối đa của cuộc hành trình với nhiên liệu đã có: Airplane.description() Airplane.distance() Tạo một instance củ Trước khi thao tác với một đối t i tượng đó. 2.5.6 Các cú phá JavaScript xây dựng các hàm,các ột dòng và kết thúc bằng dấu “;”. Ví dụ: document.writeln("It work< Các khối lệnh: Nhiều dòng lệnh Ví dụ: { do document.writeln("It work!"); SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 22 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu } Xuất dữ liệu ra cửa sổ trình duyệt: te() và document.writeln() ; Xuất c ML> utputting Text plain Các k t trong chuổi: ge return \b Dùng 2 phương pháp document.wri Ví dụ: document.write(“Test”); document.writeln(“Test”) ác thẻ HTML từ JavaScript: Ví dụ 1: <HT O This is text í tự đặc biệ \n : New line \t : Tab \r : carria \f : form feed : backspace SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 23 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Ví dụ riteln("It work!\n"); dụng hàm alert() để hiển thị thông báo trong - với người sử dụng: Sử dụng phương pháp promt() để tương tác với Dữ liệu ên: ví dụ 720 .24 , -34.2 ,2E3 Dữ liệu ”, ’245’, “ “ quả trả về là true hoặc false. chuổi). Tạo bi Hello”; Ta có te(example); để xuất nội dung của biến. Nhúng JavaScript vào trong tập tin HTML: : document.w - Làm việc với các dialog boxes: Sử một hộp. Tương tác người sử dụng. kiểu số: + Số nguy + Số Octal: ví dụ :056 + Số Hexa:ví dụ:0x5F + Số thập phân :ví dụ :7 kiểu chuổi: ví dụ: ” Hello Dữ liệu kiểu Boolean: Kết Dữ liệu kiểu null: Trả về giá trị rỗng. Dữ liệu kiểu văn bản (giống như kiểu ến trong javascript: Var example; Var example=” thể dùng document.wri Phép toán Logic && : và ||: hoặc ! not Cú pháp: SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 24 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Script Program </SC Thuộc tí RIPT hỉ đến tập tin chương trình JavaScript (*.js) ác phiên bản sử dụn ng tác với cửa sổ trình duyệt và tài liệu hiện hành đang đ ện bạn có thể viết các hàm để biểu diễn cho các hành đ lur : Xãy ra khi điểm tập trungcủa ngõ vào được di chuyển ra khỏi một thành - Form. r. erlink. Java RIPT> nh của thẻ SC + SRC :Địa chỉ URL c + LANGUAGE: Chỉ định ngôn ngữ được sử dụng trong Script và c g (ví dụ như :JavaScript ,JavaScript .1.2 vv… ,VBScript). 2.5.7 Sự kiện trong JavaScript Các sự kiện cung cấp các tươ ược load trong trang web, các hành động của user khi nhập dữ liệu vào form và khi click vào các button trong form. Khi sử dụng bộ quản lý sự ki ộng dựa vào các sự kiện đựoc chọn. Bảng sự kiện trong Javascript. Tên sự kiện mô tả: - b phần của Form (Khi user click ra ngoài một trường). click : Khi user Click vào 1 link hoặc thành phần của - change : Xãy ra khi giá trị của Form Field bị thay đổi bởi use - focus : Xãy ra khi ngõ vào tập trung vào thành phần của Form - load : Xãy ra khi một trang được Load vào trong bộ duyệt. - mouseover : Xãy ra khi User di chuyển mouse qua một Hyp - select : Xãy ra khi User chọn 1 trường của thành phần Form. - submit : Xãy ra khi User xác nhận đã nhập xong dữ liệu. - unload : Xãy ra khi User rời khỏi trang Web. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 25 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 2.5.8 Cascading Style Sheet – CSS CSS là từ viết tắt của Cascading Style Sheets : công dụng dùng để trang trí trang web của bạn, và thông thường được gắn với các ngôn ngữ như là HTML, PHP, dùng làm nổi bậc trang web và hình ảnh trang web của bạn. Mỗi khi bạn bắt đầu một Style Sheets, thì bắt buộc mở bằng và kết thúc bằng và tiếp theo sau đó là khai báo và kết thúc bằng . Cascading Style Sheet – tạm dịch là bảng kiểu xếp chồng - là một phần không thể thiếu trong thiết kế Web, nó được dùng rất nhiều trong các ứng dụng Web truyền thống cũng như trong Ajax. Một stylesheet đưa ra cách kiểm soát các loại định dạng trực quan, nó có thể được áp dụng cho các thành phần riêng lẻ trên các trang. Hơn nữa, cho các thành phần định dạng trực quan như màu sắc, lề, hình nền, tính trong suốt, kích cỡ, stylesheet có thể xác định cách mà các phần tử được bố trí quan hệ với các phần tử khác và tương tác với người dùng, cho phép các hiệu ứng khá mạnh mẽ. Trong ứng dụng Web truyền thống, stylesheet cung cấp một cách hiệu quả để xác định cách thể hiện vị trí và có thể được dùng lại trong nhiều trang web khác nữa.Với AJAX, stylesheet cung cấp một “kho chứa” các giao diện xác định trước có thể áp dụng cho các phần tử động với độ dài các đoạn mã nguồn là nhỏ nhất. CSS định dạng một trang web theo ba cách : - Sử dụng trực tiếp kèm với các thẻ HTML (Inline Style Sheet). - Định nghĩa trong một trang web (Internal Style Sheet). - Định nghĩa thành một file CSS riêng (External Style Sheet). Trang web của chúng ta sẽ tham chiếu đến file CSS này. Một quy tắc định dạng và bố trí gồm có hai phần: thành phần lựa chọn - selector và phần khai báo - style declaration. Selector đặc tả các phần tử được định dạng và bố trí, và style declaration khai báo các thuộc tính định dạng sẽ được áp dụng. Giả sử SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 26 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu muốn tạo ra các dòng text trong level-1 heading trong tài liệu (đó là đoạn nằm trong thẻ ) có màu đỏ. Có thể khai báo thuộc tính CSS như sau: h1 {color: red} 2.5.9 Các ưu điểm của CSS trong thiết kế web CSS giúp tiết kiệm được rất nhiều thời gian và công sức cho việc thiết kế web. Style trong phiên bản HTML 4.0 qui định cách thức thể hiện các thẻ. Style thường được lưu trong các file nằm ngoài trang web. Chúng giúp thay đổi cách thức định dạng và cách bố trí các trang web chỉ bằng cách thay đổi riêng file CSS. CSS cho phép điều khiển cách định dạng và cách bố trí của cùng lúc nhiều trang web với chỉ duy nhất một lần thay đổi tại một vị trí. Có thể định nghĩa nhiều style vào một thẻ HTML . CSS cho phép đưa các thông tin định nghĩa thẻ thông qua nhiều con đường khác nhau. Style có thể được qui định ở trong chỉ một thẻ HTML, được qui định trong một trang web hoặc ở trong một file CSS bên ngoài. Cú pháp cơ bản của CSS: Cú pháp của CSS gồm ba thành phần: - Thành phần lựa chọn (thường là một thẻ HTML) (Selector). - Thuộc tính (Property). - Giá trị (Value). Thể hiện của cú pháp CSS: Selector { Property1: Value1; Property2: Value2; } SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 27 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Selector có thể là các thẻ/nhóm thẻ HTML, các lớp khai báo, hay bằng định danh duy nhất của phần tử. 2.5.10 Tổng quan XML 2.5.10.1 Khái niệm XML viết tắt từ tiếng Anh Extensible Markup Language, "Ngôn ngữ Đánh dấu Mở rộng".XML là ngôn ngữ đánh dấu với mục đích chung do W3C đề nghị, để tạo ra các ngôn ngữ đánh dấu khác. Đây là một tập con đơn giản của SGML, có khả năng mô tả nhiều loại dữ liệu khác nhau. Mục đích chính của XML là đơn giản hóa việc chia sẻ dữ liệu giữa các hệ thống khác nhau, đặc biệt là các hệ thống được kết nối với Internet. Các ngôn ngữ dựa trên XML (thí dụ: RDF, RSS, MathML, XHTML, SVG, và cXML) được định nghĩa theo cách thông thường, cho phép các chương trình sửa đổi và kiểm tra hợp lệ bằng các ngôn ngữ này mà không cần có hiểu biết trước về hình thức của chúng. 2.5.10.2 Lịch sử Vào giữa những năm 1990, các chuyên gia SGML đã có kinh nghiệm với World Wide Web (vẫn còn khá mới vào thời đó). Họ tin tưởng rằng SGML có thể cung cấp giải pháp cho các vấn đề mà Web đang gặp phải. Jon Bosak đưa ra ý kiến W3C nên tài trợ một chương trình mang tên "SGML trên Web". 2.5.10.3 Đặc điểm XML cung cấp một phương tiện dùng văn bản (text) để mô tả thông tin và áp dụng một cấu trúc kiểu cây cho thông tin đó. Tại mức căn bản, mọi thông tin đều thể hiện dưới dạng text, chen giữa là các thẻ đánh dấu (markup) với nhiệm vụ ký hiệu sự phân chia thông tin thành một cấu trúc có thứ bậc của các dữ liệu ký tự, các phần tử dùng để chứa dữ liệu, và các thuộc tính của các phần tử đó. Về mặt đó, XML tương tự với các biểu thức S (S-expression) của ngôn ngữ lập trình LISP ở chỗ chúng đều mô tả các cấu trúc cây mà trong đó mỗi nút có thể có một danh sách tính chất của riêng mình. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 28 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Đơn vị cơ sở của XML là các ký tự theo định nghĩa của Universal Character Set (Bộ ký tự toàn cầu). Các ký tự được kết hợp theo các tổ hợp chuỗi hợp lệ để tạo thành một tài liệu XML. Tài liệu này gồm một hoặc nhiều thực thể, mỗi thực thể thường là một phần nào đó của các ký tự thuộc tài liệu, được mã hóa dưới dạng một chuỗi các bit và lưu trữ trong một tệp văn bản (text file). Các tệp XML có thể dùng cho nhiều loại dữ liệu đa phương tiện. RFC3023 định nghĩa các loại "application/xml" và "text/xml", với ý rằng dữ liệu được biểu diễn bằng XML mà không nói gì đến ngữ nghĩa của dữ liệu. Sự phổ biến của các phần mềm soạn thảo văn bản (word processor) đã hỗ trợ việc soạn thảo và bảo trì tài liệu XML một cách nhanh chóng. Trước XML, có rất ít ngôn ngữ mô tả dữ liệu với các đặc điểm đa năng, thân thiện với giao thức Internet, dễ học và dễ tạo. Thực tế, đa số các định dạng trao đổi dữ liệu thời đó đều chuyện dụng, có tính độc quyền, và có định dạng nhị phân (chuỗi bit thay vì chuỗi ký tự) khó dùng chung giữa các ứng dụng phần mềm khác nhau hay giữa các hệ nền (platform) khác nhau. Việc tạo và bảo trì trên các trình soạn thảo thông dụng lại càng khó khăn. Bằng cách cho phép các tên dữ liệu, cấu trúc thứ bậc được phép, và ý nghĩa của các phần tử và thuộc tính có tính chất mở và có thể được định nghĩa bởi một giản đồ tùy biến được, XML cung cấp một cơ sở cú pháp cho việc tạo lập các ngôn ngữ đánh dấu dựa XML theo yêu cầu. Cú pháp chung của các ngôn ngữ đó là cố định — các tài liệu phải tuân theo các quy tắc chung của XML, bảo đảm rằng tất cả các phần mềm hiểu XML ít ra cũng phải có khả năng đọc (phân tích cú pháp - parse) và hiểu bố cục tương đối của thông tin trong các tài liệu đó. Giản đồ chỉ bổ sung một tập các ràng buộc cho các quy tắc cú pháp. Các giản đồ thường hạn chế tên của phần tử và thuộc tính và các cấu trúc thứ bậc được phép, ví dụ, chỉ cho phép một phần tử tên 'ngày sinh' chứa một phần tử tên 'ngày' và một phần tử có tên 'tháng', mỗi phần tử phải chứa đúng một ký tự. Đây là điểm khác biệt giữa XML và HTML. HTML có một bộ các phần tử và thuộc tính không mềm dẻo, chỉ có một tác dụng và nói chung là không thể dùng cho mục đích khác. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 29 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu XML không hạn chế về việc nó được sử dụng như thế nào. Mặc dù XML về cơ bản là dạng text, các phần mềm với chức năng trừu tượng hóa nó thành các định dạng khác giàu thông tin hơn đã nhanh chóng xuất hiện, quá trình trừu tượng hóa này được thực hiện chủ yếu qua việc sử dụng các giản đồ định hướng kiểu dữ liệu (datatype- oriented schema) và khuôn mẫu lập trình hướng đối tượng (mà trong đó, mỗi tài liệu XML được thao tác như là một đối tượng). Những phần mềm như vậy có thể coi XML như là dạng text đã được tuần tự hóa chỉ khi nó cần truyền dữ liệu qua mạng. 2.5.10.4 Ứng dụng của XML. - XML có thể tạo ra các tập ngôn ngữ con khác(ngôn ngữ định dạng dựa trên XML hay XML-based Language). - Ứng dụng XML mang ý nghĩa cho biết một tập hợp các thẻ hay tập con XML hoạt động trong riêng một lĩnh vực nào đó.Ví dụ MathML là một ứng dụng của XML trong lĩnh vực toán học. - CML –Ngôn ngữ định dang hóa học. - MathMl – Ngôn ngữ định dạng toán học. - CDF – Khuôn dạng định nghĩa kênh. - SMIL – Ngôn ngữ tích hợp multimedia đồng bộ. - HTML+TIME. - XHTML. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 30 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Chương trình XML đơn giản: Ví dụ 1: Hình 2.5 Đoạn mã của hình 2.5. Smit Sam Ngay 18 thang 3 nam 2008 Tomatoes 8 $1 .25 SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 31 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Ví dụ 2: Hình 2.6 Đoạn mã của hình 2.6: Data Binding With the XML DSO Data Binding With the XML DSO SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 32 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu <XML ID="dsoCustomer" SRC="customer.xml" HEIGHT="0" WIDTH="0"> Name:<INPUT TYPE="TEXT" DATASRC="#dsoCustomer" DATAFLD="NAME" SIZE="10"> ID:<INPUT TYPE="TEXT" DATASRC="#dsoCustomer" DATAFLD="CUSTOMER_ID" SIZE="5"> Purchase date:<SPAN DATASRC="#dsoCustomer" DATAFLD="PURCHASE_DATE"> Department:<SPAN DATASRC="#dsoCustomer" DATAFLD="DEPARTMENT" SIZE="1"> Product <OPTION VALUE="Meat"Meat <OPTION VALUE="Frozen" Frozen Product:<SPAN DATASRC="#dsoCustomer" DATAFLD="PRODUCT_NAME"> < < SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 33 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu <BUTTON ONCLICK=”if(!dsoCustomer.recordset.BOF) dsoCustomer. recordset.movePrevious()”>< <BUTTON ONCLICK=”if(!dsoCustomer.recordset.EOF) dsoCustomer. recordset.moveNext()”>> > > SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 34 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu CHƯƠNG 3 GIẢI QUYẾT BÀI TOÁN 3.1 PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN 3.1.1 Sơ Đồ Use Case 3.1.1.1 Use Case Nhà Cung Cấp Các chức năng của nhà cung cấp: - Đăng ký. - Đăng nhập. - Quản lý thông tin. - Xem phản hồi. Hình 3.1 Sơ đồ Use Case Nhà Cung Cấp SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 35 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.1.1.2 Sơ Đồ Use Case Thực Khách Và Hệ Thống Các chức năng của thực khách: ƒ Đăng nhập. ƒ Viết phản hồi. ƒ Tìm kiếm. Hình 3.2 Sơ đồ Use Case Thực Khách 3.1.1.3 Sơ Đồ Use Case Ban Quản Trị Các chức năng chính của ban quản trị và hệ thống là: ƒ Đăng nhập. ƒ Quản lý nhà cung cấp. ƒ Quản lý món ăn. ƒ Quản lý tin tức. ƒ Quản lý phản hồi. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 36 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu ƒ Quản lý danh mục: tin tức, loại nhà cung cấp, khu vực nhà cung cấp. Hình 3.3 Sơ đồ Use Case Ban Quản Trị SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 37 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.1.1.4 Sơ đồ Use Case Khách Hàng Vãng lai Các chức năng của khách hàng vãng lai ƒ Đăng ký thành viên. ƒ Xem thông tin ẩm thực. ƒ Tìm kiếm. Hình 3.4 Sơ đồ Use Case Khách Hàng Vãng lai SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 38 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.1.1.5 Sơ đồ Use Case Của Toàn Hệ Thống Hình 3.5 Use Case Của Toàn Hệ Thống 3.1.2 Đặc tả Use case Đăng nhập: Use case này mô tả cách thức người dùng đăng nhập vào hệ thống. Các luông sự kiện SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 39 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Use case này bắt đầu khi hệ thống yêu cầu người dùng đăng nhập. Luồng sự kiện chính: - Hệ thống hiển thị một màn hình yêu cầu người sử dụng nhập tên và mật khẩu. - Người dùng nhập tên và mật khẩu. - Sau khi nhập xong nhấn đồng ý. - Hệ thống sẽ chuyển thông tin lên server để xử lý. - Hệ thống sẽ kiểm tra tên và mật khẩu có trong cơ sở dữ liệu hay không. - Hệ thống sẽ dựa vào quyền của người đăng nhập để cấp cho những chức năng tương ứng. - Sau đó hệ thống sẽ thông báo cho người dùng biết là đã đăng nhập thành công. Luồng sự kiện phụ - Nếu trong luông sự kiện chính, người dùng nhập sai tên hoặc mật khẩu thì hệ thống sẽ thông báo là nhập tên và mật khẩu sai. Hệ thống sẽ hiển thị lại màn hình đăng nhập yêu cầu người dùng đăng nhập lại. - Người dùng có thể đăng nhập lại hoặc là hủy bỏ việc đăng nhập. - Điều kiện tiên quyết. - Hệ thống phải kết nối thành công với server. Kết quả Nếu đăng nhập thành công sẽ xuất hiện màn hình quản lý chính và tùy theo từng quyền của người dùng sẽ xuất hiện những chức năng tương ứng. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 40 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.2 SƠ ĐỒ TRÌNH TỰ CÁC CHỨC NĂNG CHÍNH 3.2.1 Sequence diagram cho Use Case Login Hình 3.6 Sequence diagram cho Use Case Login SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 41 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.2.2 Sequence diagram cho Use Case Đăng ký thành viên Hình 3.7 Sequence diagram cho Use Case Đăng ký thành viên Chức năng: Cho phép nhà cung cấp có thể đăng ký làm thành viên của website. Đối tượng: Nhà cung cấp (khách sạn, nhà hàng, quán ăn). Thông tin đầu vào: Ảnh minh hoạ, tên đăng nhập, mật khẩu, xác nhận mật khẩu, tên nhà hàng, khu vực, loại hình, địa chỉ nhà hàng, số điện thoại, email (nếu có), câu hỏi bí mật, câu trả lời, giới thiệu về nhà hàng, xác nhận dãy số an toàn. Cách thức xử lý: Kiểm tra form: Tên đăng nhập phải từ 6 tới 24 ký tự và chưa có trong cơ sở dữ liệu, Mật khẩu phải từ 6 tới 24 ký tự, Mật khẩu xác nhận phải giống với mật khẩu chính, Địa chỉ không quá 100 ký tự, Số điện thoại phải là số và có từ 8 đến 12 số, Địa chỉ email phải đúng mẫu, Câu hỏi bí mật phải được chọn, câu trả lời phải được điền. Kiểm tra ràng buộc dữ liệu trong CSDL. Dữ liệu cần lưu trữ: Tất cả các giữ liệu nhập vào được lưu vào trong database và sẽ có thêm trạng thái của dữ liệu (được ban quản trị xác nhận hay chưa?). SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 42 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Thông tin đầu ra: Hiện thông báo lỗi nếu các form nhập không đúng mẫu hoặc không hợp lệ. Hiện form thông báo đăng ký thành công và chờ Ban quản trị xác nhận nếu các thông tin đầy đủ và hợp lệ. 3.2.3 Sequence diagram cho Use Case Cập nhật Thông Tin Nhà Cung Cấp Hình 3.8 sequence diagram cho Use Case Cập nhật Thông Tin Nhà Cung Cấp Chức năng: Cho phép nhà cung cấp có thể thêm, sửa chữa lại các thông tin của mình. Đối tượng: Nhà cung cấp (khách sạn, nhà hàng, quán ăn ). Thông tin đầu vào: Ảnh minh hoạ, tên đăng nhập, mật khẩu, xác nhận mật khẩu, tên nhà hàng, khu vực, loại hình, địa chỉ nhà hàng, số điện thoại, email (nếu có), câu hỏi bí mật, câu trả lời, giới thiệu về nhà hàng. Cách thức xử lý: Kiểm tra ràng buộc dữ liệu mới nhập vào, sau đó cập nhật vào CSDL thông tin mới. Dữ liệu cần lưu trữ: Các thông tin mới của nhà cung cấp. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 43 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu Thông tin đầu ra: Hiện thông báo lỗi nếu các form nhập không đúng mẫu hoặc không hợp lệ. Hiện form thông báo cập nhật thành công nếu các thông tin điền vào hợp lệ. 3.2.4 Sequence diagram Use Case Đăng Bài Giới Thiệu Món Ăn Hình 3.9 Sequence diagram Use Case Đăng Bài Giới Thiệu Món Ăn : Cho phép nhà cung cấp đăng bài giới thiệu về món ăn. Chức năng Đối tượng: Nhà cung cấp (Khách sạn, nhà hàng, quán ăn...). Thông tin đầu vào: Ảnh minh hoạ, tên món ăn, thể loại món ăn, nội dung giới thiệu món ăn. Cách Cách thức xử lý: Kiểm tra ràng buộc dữ liệu mới nhập vào, sau đó cập nhật vào CSDL dữ liệu mới. Thông tin đầu ra: Trưng bày món ăn mới lên trang chủ của thực khách. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 44 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.2.5 Sequence diagram cho Use Case Tìm kiếm Món Ăn, Nhà Hàng, Tin tức Hình 3.10 Sequence diagram cho Use Case Tìm kiếm Món Ăn, Nhà Hàng, Tin tức. Chức năng: Cho phép thực khách tìm kiếm các món ăn theo danh mục, nhà hàng, thông tin. Đối tượng: Thực khách. Thông tin đầu vào: Nhập vào từ khóa cần tìm và loại tìm kiếm. Cách thức xử lý: Kiểm tra từ khoá trong CSDL xem có không. Thông tin đầu ra: Hiện ra các thông tin có chứa từ khóa được tìm thấy trong CSDL. SVTH: Đỗ Thị Hiền, Nguyễn Thị Thuý Loan. 45 Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực GVHD:Trương Minh Châu 3.3 SƠ ĐỒ TIẾN TRÌNH 3.3.1 Sơ Đồ Tiến Trình Của Nhà Cung Cấp Hình 3.11 Sơ Đồ Tiến Trình Của Nhà Cung Cấp 3.3.2 Sơ Đồ Tiến Trình Của Món Ăn Hình 3.12 Sơ Đồ Tiến Trình Của Món Ăn SVTH: Đỗ Thị Hiền, Nguyễn Thị

Các file đính kèm theo tài liệu này:

  • pdfỨng dụng AJAX xây dựng website Văn Hóa Ẩm Thực.pdf