Trong thời đại ngày nay, chúng ta luôn hướng đến những gì đơn giản, gần gũi và tiện
lợi trong mọi lĩnh vực. Công nghệthông tin cũng không nằm ngoài mục tiêu này. Có
điều đây là lĩnh vực có tốc độthay đổi kinh ngạc, tính từng giây từng phút. Các công
nghệliên tục thay đổi và cũng liên tục ra đời các công nghệmới thật phong phú, trợ
giúp hữu ích cho các nhà quản trịvà người sửdụng.
Ajax có thểnói là một công nghệkhá mới, đặc biệt là ởViệt Nam nhưng nó được sử
dụng ngày càng phổbiến vì khảnăng tương tác cao, làm cho các ứng web gần với ứng
dụng đểbàn hơn.
Ajax (Asynchronous JavaScript + XML) được tạo ra bởi Jesss James Garrett của
Adaptive Path. Một sốthành phần của Ajax đã được mô tảtrước đây là Dynamic
HTML và việc kịch bản hóa từxa. Vềmặt công nghệ, Ajax đưa ra các biểu thức cho
các tiềm năng chưa thực hiện được trong các công nghệtrình duyệt web trước đây.
Google và một sốtổchức chính khác đã sửdụng Ajax đểxây dựng những gì có tính
chất cộng đồng được mong đợi giống nhưnhững gì mà một ứng dụng web có thểthực
hiện. Một sốlượng lớn các kỹthuật được sắp xếp đểlấp đầy những thiếu sót với sự
phong phú hơn, thông minh hơn hoặc vềmặt cải tiến các client. Ajax cho phép thực
hiện điều này tốt hơn, thông minh hơn mà chỉsửdụng các kỹthuật đã được cài đặt
trên sốlượng lớn các máy tính hiện đại.
Một đặc điểm nữa cho thấy Ajax ngày càng được ứng dụng rộng rãi là nó độc lập với
hệ điều hành (không phụthuộc nền), xứlý dữliệu XML, sửdụng các JavaScript.
80 trang |
Chia sẻ: tuandn | Lượt xem: 2378 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng từ điển Multimedia dùng công nghệ AJAX trên nền PHP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHỆ
---------------o0o---------------
ĐỒ ÁN TỐT NGHIỆP
Đề tài
XÂY DỰNG TỪ ĐIỂN MULTIMEDIA
DÙNG CÔNG NGHỆ AJAX TRÊN NỀN PHP
SVTH : LÊ THANH NHÀN
Lớp : 03DTHM
MSSV : 103102139
GVHD : Thầy HOÀNG ĐỨC QUANG
THÀNH PHỐ HỒ CHÍ MINH
NĂM 2009
1
BỘ GIÁO DỤC & ĐÀO TẠO
ĐẠI HỌC KỸ THUẬT CÔNG
NGHỆ TP.HCM
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP – TỰ DO – HẠNH PHÚC
_____oOo_____
Khoa: Công nghệ thông tin
Bộ môn: Mạng máy tính
NHIỆM VỤ THỰC HIỆN LUẬN VĂN
TỐT NGHIỆP CUỐI KHOÁ
Họ và tên : Lê Thanh Nhàn MSSV : 103102139
Ngành : Mạng máy tính Lớp : 03DTHM
1. Đầu đề đồ án tốt nghiệp :
Xây dựng từ điển multimedia dùng công nghệ Ajax trên nền PHP.
2. Nhiệm vụ :
a. Dữ liệu ban đầu :
.....................................................................................................................................................
.....................................................................................................................................................
.....................................................................................................................................................
.....................................................................................................................................................
.....................................................................................................................................................
.....................................................................................................................................................
b. Nội dung
Phần tìm hiểu công nghệ :
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
Phần phân tích, thiết kế & xây dụng ứng dụng minh họa :
2
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
...............................................................................................................................
3. Ngày giao nhiệm vụ đồ án: 7/10/2008
4. Ngày hoàn thành nhiệm vụ: 3/1/2009
5. Họ tên giáo viên hướng dẫn: thầy Hoàng Đức Quang
Nội dung và yêu cầu đồ án tốt nghiệp đã
thông qua.
TP.HCM, ngày …… tháng …… năm 2009
CHỦ NHIỆM KHOA
(Ký và ghi rõ họ tên)
GIÁO VIÊN HƯỚNG DẪN CHÍNH
(Ký và ghi rõ họ tên)
PHẦN DÀNH CHO BỘ MÔN
Người duyệt (chấm sơ bộ) : .................................................
Đơn vị : ..................................................................................
Ngày bảo vệ : ........................................................................
Điểm tổng quát : ..................................................................
3
NHẬN XÉT ĐÁNH GIÁ CỦA GIẢNG VIÊN HƯỚNG DẪN
ĐỀ TÀI: .............................................................................................................................
............................................................................................................................................
Sinh Viên: ........................................................... Chuyên ngành .................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
Điểm bằng số: .....................................................
Điểm bằng chữ: ..................................................
Tp. Hồ Chí Minh, ngày tháng năm
NGƯỜI NHẬN XÉT
(Ký tên và ghi rõ họ tên)
4
NHẬN XÉT ĐÁNH GIÁ CỦA GIẢNG VIÊN PHẢN BIỆN
ĐỀ TÀI: .............................................................................................................................
............................................................................................................................................
Sinh Viên: ........................................................... Chuyên ngành .................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
Các câu hỏi (tối đa 3 câu):
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
Điểm bằng số: .....................................................
Điểm bằng chữ: ..................................................
Tp. Hồ Chí Minh, ngày tháng năm
NGƯỜI NHẬN XÉT
(Ký tên và ghi rõ họ tên)
5
LỜI CÁM ƠN
Để hoàn thành được đồ án tốt nghiệp này, em đã được sự trợ giúp rất nhiều của thầy
cô, bạn bè và gia đình.
Đầu tiên, em xin gởi lời cảm ơn đến Thầy, Cô khoa Công Nghệ Thông Tin trường Đại
học Kỹ Thuật Công Nghệ đã tận tình dạy dỗ, dìu dắt em trong suốt bốn năm đại học.
Em xin cảm ơn Thầy Hoàng Đức Quang, người tận tình hướng dẫn, giúp đỡ, động viên
em trong quá trình tìm hiểu và thực hiện đề tài “Xây dựng từ điển multimedia dùng
công nghệ Ajax trên nền PHP”.
Cuối cùng, con cảm ơn Ba, Mẹ và những người thân đã khích lệ, động viên con trong
thời gian học tập, nghiên cứu để có được kết quả như ngày nay.
Tháng 1 năm 2009
Sinh viên
Lê Thanh Nhàn
6
LỜI NÓI ĐẦU
Trong thời đại ngày nay, chúng ta luôn hướng đến những gì đơn giản, gần gũi và tiện
lợi trong mọi lĩnh vực. Công nghệ thông tin cũng không nằm ngoài mục tiêu này. Có
điều đây là lĩnh vực có tốc độ thay đổi kinh ngạc, tính từng giây từng phút. Các công
nghệ liên tục thay đổi và cũng liên tục ra đời các công nghệ mới thật phong phú, trợ
giúp hữu ích cho các nhà quản trị và người sử dụng.
Ajax có thể nói là một công nghệ khá mới, đặc biệt là ở Việt Nam nhưng nó được sử
dụng ngày càng phổ biến vì khả năng tương tác cao, làm cho các ứng web gần với ứng
dụng để bàn hơn.
Ajax (Asynchronous JavaScript + XML) được tạo ra bởi Jesss James Garrett của
Adaptive Path. Một số thành phần của Ajax đã được mô tả trước đây là Dynamic
HTML và việc kịch bản hóa từ xa. Về mặt công nghệ, Ajax đưa ra các biểu thức cho
các tiềm năng chưa thực hiện được trong các công nghệ trình duyệt web trước đây.
Google và một số tổ chức chính khác đã sử dụng Ajax để xây dựng những gì có tính
chất cộng đồng được mong đợi giống như những gì mà một ứng dụng web có thể thực
hiện. Một số lượng lớn các kỹ thuật được sắp xếp để lấp đầy những thiếu sót với sự
phong phú hơn, thông minh hơn hoặc về mặt cải tiến các client. Ajax cho phép thực
hiện điều này tốt hơn, thông minh hơn mà chỉ sử dụng các kỹ thuật đã được cài đặt
trên số lượng lớn các máy tính hiện đại.
Một đặc điểm nữa cho thấy Ajax ngày càng được ứng dụng rộng rãi là nó độc lập với
hệ điều hành (không phụ thuộc nền), xứ lý dữ liệu XML, sử dụng các JavaScript.
Tóm lại, đây là một công nghệ thể hiện tính đáp ứng nhanh cao, thích hợp cho việc xây
dựng các ứng dụng đòi hỏi tính tức thời trên môi trường web. Từ điển media trực
tuyến là một ứng dụng điển hình. Và cũng là mục tiêu chính đồ án tốt nghiệp của em.
7
MỤC LỤC
Phần 1: TÌM HIỂU VẤN ĐỀ
Chương 1: TỔNG QUAN……………………………………………………….1
1. Tiền đề xuất hiện công nghệ Ajax…………………………………………1
1.1. Nguyên nhân xuất hiện công nghệ Ajax……………………………...1
1.2. Công nghê web thể hệ thứ hai – Web 2.0…………………………….4
1.3. Các thế mạnh của Ajax……………………………………………….9
2. Nhiệm vụ đồ án…………………………….……………………..……...12
Chương 2: MÔ HÌNH MVC…………………….…………………………….14
1. Giới thiệu mô hình MVC………………………………………………...14
2. View trong ứng dụng Ajax……………………………………….……....15
3. Controller trong ứng dụng Ajax………………………………….……....17
4. Model trong ứng dụng Ajax……………………………………….……..19
5. Ví dụ về mô hình MVC trên nền PHP…………………………….……..22
6. Mô hình MVC cho ứng dụng từ điển……………….……….…….……..30
Chương 3: CÁC CÔNG NGHỆ TRONG AJAX………………….…….……32
1. Cascading Style Sheet……………………….…………….….………….32
2. JavaScript………………………………………………………..……….35
3. DOM……………………………………………………………..………39
4. Đối tượng XMLHttpRequest……………………………….….………...43
4.1. Giới thiệu…………………………………………………..………..43
4.2. Phương thức, thuộc tính………………………………….…………45
4.3. Sự tương tác……………………………………………….………..46
4.4. Get và Post…………………………………………….……………49
4.5. Gởi Request…………………………………………….…………..50
5. Streaming…………………………………………………....………….53
5.1. Giới thiệu……………………………………………...…………...53
5.2. Các phương thức streaming……………………….……………….54
8
Phần 2: THIẾT KẾ VÀ CÀI ĐẶT
Chương 4: THIẾT KẾ………………………………………………………56
1. Sơ đồ ứng dụng……………………………………………….……….56
2. Cơ sở dữ liệu………………………………………………….……….56
3. Cài đặt server………………………………………………………….57
Chương 5: CÁC MODULE, LỚP CHÍNH CỦA ỨNG DỤNG…….…….60
1. Hệ thống tập tin………………………………………….……………60
2. Các module của ứng dụng………………………………….…………60
3. Các lớp đối tượng chính trong từng module…………….……………60
Phần 3: KẾT QUẢ, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN
1. Kết quả thử nghiệm…………………………………….……….…….61
2. Hoạt động của ứng dụng………………………………..…………….61
3. Kết luận………………………………………………….…….….…..69
4. Hướng phát triển……………………………………….……..………70
9
Phần 1: TÌM HIỂU VẤN ĐỀ
CHƯƠNG 1: TỔNG QUAN
1. TIỀN ĐỀ XUẤT HIỆN CÔNG NGHỆ AJAX
1.1. NGUYÊN NHÂN XUẤT HIỆN CÔNG NGHỆ AJAX
Trước khi tìm hiểu về Ajax, ta cần xem xét quá trình phát triển các công nghệ web,
nguyên nhân và hoàn cảnh xuất hiện công nghệ Ajax.
Lúc đầu, các trang web là tĩnh, người dùng gửi yêu cầu một tài nguyên nào đó, và
server sẽ trả về tài nguyên đó. Các trang Web không có gì hơn là một văn bản được
định dạng và phân tán. Đối với các trình duyệt thì các trang web tĩnh không phải là các
vấn đề khó khăn, và trang web lúc đầu chỉ để thông tin về các sự kiện, địa chỉ, hay lịch
làm việc qua Internet mà thôi, chưa có sự tương tác qua các trang web. Năm 1990,
Tim Berners-Lee, tại CERN, đã sáng chế ra HTML (Hyper Text Markup Language),
ngôn ngữ đánh dấu siêu văn bản. HTML rất đơn giản, dễ dùng, và nó trở thành một
ngôn ngữ rất phổ biến, cơ bản.
Tuy nhiên, không lâu sau, nhu cầu về các trang web động, có sự tương tác ngày một
tăng, chính vì thế sự ra đời các công nghệ web động là một điều tất yếu. Dưới đây là
một số công nghệ web động cơ bản:
JAVASCRIPT
Netscape đã tạo ra một ngôn ngữ kịch bản gọi là JavaScript. JavaScript được thiết kế
để việc phát triển dễ dàng hơn cho các nhà thiết kế web và các lập trình viên không
thành thạo Java. (Microsoft cũng có một ngôn ngữ kịch bản gọi là VBScript).
JavaScript ngay lập tức trở thành một phương pháp hiệu quả để tạo ra các trang web
động.
Việc coi các trang như là một đối tượng đã làm nảy sinh một khái niệm mới gọi là
Document Object Model (DOM). Lúc đầu, JavaScript và DOM có một sự kết hợp chặt
chẽ nhưng sau đó chúng được phân tách. DOM hoàn toàn là cách biểu diễn hướng đối
tượng của trang web và nó có thể được sửa đổi với các ngôn ngữ kịch bản bất kỳ như
JavaScript hay VBScript.
10
Tổ chức World Wide Web Consortium (W3C) đã chuẩn hóa DOM, trong khi
European Computer Manufacturers Association (ECMA) phê duyệt JavaScript dưới
dạng đặc tả ECMAScript.
JSP/SERVLET, ASP VÀ PHP
Cùng với Java, Sun đồng thời đưa ra một công nghệ mới gọi là Servlet. Các đoạn mã
Java sẽ không chạy phía client như Applet; chúng sẽ được chạy trên một ứng dụng
phía server. Servlet cũng đồng thời phục vụ các CGI script. Servlet là một bước tiến
lớn, nó đưa ra một thư viện hàm API trên Java và một thư viện hoàn chỉnh để thao tác
trên giao thức HTTP.
JavaServer Page (JSP) là một công nghệ lập trình web của Sun, cùng với nó là một
công nghệ khác của Microsoft - Active Server Pages (ASP). JSP là công nghệ đòi hỏi
một trình chủ hiểu được Java.
Microsoft đã nghiên cứu các nhược điểm của Servlet và tạo ra ASP dễ dàng hơn để
thiết kế các trang web động. Microsoft thêm các bộ công cụ rất mạnh và sự tích hợp
rất hoàn hảo với các web server. JSP và ASP có những nét tương đương vì chúng đều
được thiết kế để phân tách quá trình xử lí khỏi quá trình biểu diễn. Có sự khác biệt về
kỹ thuật, song cả hai đều cho phép các nhà thiết kế web tập trung vào cách bố trí
(layout), trong khi các nhà phát triển phần mềm thì tập trung vào các kỹ thuật lập trình
logic.
Tất nhiên Microsoft và Sun không độc quyền ở các giải pháp phía server. Còn có các
công nghệ khác, trong đó phải kể đến là PHP (Hypertext Preprocessor) cho tới Cold
Fusion. Các công nghệ này cung cấp các bộ công cụ rất mạnh cho các nhà phát triển.
PHP là gì
PHP (viết tắt của Hypertext Preprocessor) là ngôn ngữ lập trình được kết nối chặc chẽ
với máy chủ. Nói một cách đơn giản không theo thuật ngữ khoa học thì là một quá
trình xử lý PHP được thực hiện trên máy chủ (Windows hoặc Unix). Khi một trang
web muốn dùng PHP thì phải đáp ứng được tất cả các quá trình xử lý thông tin trong
trang web đó, sau đó đưa ra kết quả như ngôn ngữ HTML. Vì quá trình xử lý này diễn
11
ra trên máy chủ nên trang web được viết bằng PHP sẽ dễ nhìn hơn ở bất kỳ hệ điều
hành nào.
Cũng giống hầu hết các ngôn ngữ lập trình khác, PHP có thể nối trực tiếp với HTML.
Mã PHP tách biệt với HTML bằng các thực thể đầu và cuối. Khi một tài liệu được đưa
ra phân tích, quá trình xử lý PHP chỉ được thực hiện ở những điểm quan trọng, rồi sau
đó đưa ra kết quả.
Nhưng bên cạnh đó, PHP cũng có khả năng tách biệt mã hoàn tòan với HTML. Nói
rộng ra, việc đưa ra sự kết hợp này rất chi là lý tưởng, bởi vì nó cho phép các nhà thiết
kết có thể làm việc trên trang web đã được bố trí theo kế hoạch mà không bị cản trở
bởi các mã.
Vì sao nên dùng PHP
Không còn xa lạ gì khi có rất nhiều sự lựa chọn các ngôn ngữ lập trình khác ngoài
PHP như ASP, Perl…và một số loại khác. Trong mỗi ngôn ngữ lập trình này đều có
cấu hình và chức năng khác nhau nhưng chúng vẫn có thể đưa ra một kết quả giống
nhau.
Tại sao PHP lại là ưu tiên hàng đầu của bạn?
Rất đơn giản, đối với những người còn xa lạ với chương trình, đây là sự lôi cuốn mạnh
mẽ nhất. Thậm chí là rất ít hoặc không có một chương trình nào có thể tạo ra tốc độ
đáng kinh ngạc trong việc phát triển web như PHP. Bởi vì nó được thiết kế đặc biệt
trong các ứng dụng web. PHP xây dựng được rất nhiều tính năng để đáp ứng những
nhu cầu chung nhất.
PHP là một mã nguồn thông tin mở. Bởi vì mã nguồn của PHP sẵn có nên cộng đồng
các nhà phát triển web luôn có ý thức cải tiến nó, nâng cao để khắc phục các lỗi trong
chương trình này.
PHP rất ổn định và tương hợp. PHP vận hành khá ổn định trên các hệ điều hành gồm
cả Unix, Windows. Đồng thời nó chạy trên các máy chủ như IIS và Apache rất tốt.
12
Xét một cách toàn diện thì PHP là một ngôn ngữ rất dễ học. Nếu ta đã biết qua các
ngôn ngữ như C hay Pascal thì việc học PHP sẽ rất mau, bởi nó có những nét tương
đồng nhau.
FLASH
Năm 1996, FutureWave đã đưa ra sản phẩm FutureSplash Animator. Sau đó
FutureWave thuộc sở hữu của Macromedia, và công ty này đưa ra sản phẩm Flash.
Flash cho phép các nhà thiết kế tạo các ứng dụng hoạt họa và linh động. Flash không
đòi hỏi các kỹ năng lập trình cao cấp và rất dễ học. Cũng giống như nhiều giải pháp
khác Flash yêu cầu phần mềm phía client. Chẳng hạn như gói Shockwave Player plug-
in có thể được tích hợp trong một số hệ điều hành hay trình duyệt.
DHTML
Khi Microsoft và Netscape đưa ra các phiên bản trình duyệt của họ, thì các nhà phát
triển web có một lựa chọn mới: Dynamic HTML (DHTML). DHTML không phải là
một chuẩn của W3C, nó giống một bộ công cụ thương mại hơn. Trong thực tế nó là
một tập hợp gồm HTML, Cascading Style Sheets (CSS), Jav