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
83 trang |
Chia sẻ: netpro | Lượt xem: 2838 | Lượt tải: 5
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:
- Ứng dụng AJAX xây dựng website Văn Hóa Ẩm Thực.pdf