Chương 1 : GIỚI THIỆU MÔ HÌNH RICH INTERNET APPLICATION
2.2. Giải pháp nâng cấp trang web
2.2.1. Những vấn đề và giải pháp
Qua phân tích ở trên, ta có thể tìm ra các giải pháp cho từng vấn đề gặp phải của trang web (xem bảng 2.1)
Bảng 2.1: Vấn đề và giải pháp cho việc nâng cấp trang web Vấn đề và tồn tại Giải pháp lựa chọn
1. Tốc độ chậm Áp dụng web động để giảm dung lượng truyền (dữ liệu ảnh, đường truyền hạn chế là cố hữu phải chấp nhận)
2. Không chọn hàng trực tuyến Tạo giỏ hàng ảo (giải pháp này khả thi khi áp dụng web động)
3. Không theo dõi thanh toán trực tuyến
Tự động làm hóa đơn, trợ giúp theo dõi thanh toán
4. Chưa có trợ giúp quyết định Thêm chức năng trợ giúp quyết định kinh doanh
5. Cơ sở dữ liệu sơ sài Thiết kế lại CSDL để đáp ứng các chức năng mới và nâng cao hiệu quả vận hành
6. Chưa quan tâm đến bảo mật Ứng dụng mô hình bảo mật đã có
Giải pháp tổng thể để giải quyết bài toán đặt ra là thiết kế lại toàn bộ trang web theo hướng đối tượng với các yêu cầu đặt ra và phát triển hệ thống trên cơ sơ ứng dụng mô hình RIA.
2.2.2. Lựa chọn công cụ nâng cấp
− Công nghệ phát triển ứng dụng: Ajax và các công nghệ liên quan.
− Ngôn ngữ lập trình: PHP, java và javascript.
− Cơ sở dữ liệu: MySQL
− Hệ điều hành: WINDOWS.
− Máy chủ web (Webserver) : Apache.
2.2.3 Mô hình triển khai
− Tầng Presentation: được dùng để giao tiếp với người dùng, nhiệm vụ chính là hiển thị dữ liệu và nhận dữ liệu từ người dùng.
− Tầng Business Logic: nhiệm vụ chính là cung cấp các chức năng của phần mềm.
− Tầng Data: lưu trữ dữ liệu, cho phép lớp Business Logic có thể tìm kiếm, trích xuất, cập nhật… dữ liệu.
2.2.4. Một số công cụ, giải pháp cụ thể
a. Giải pháp an toàn và bảo mật
Trao đổi dữ liệu giữa máy trạm và máy chủ được thiết kế theo cơ chế bảo mật của HTTP. HTTP thông qua tầng socket bao bọc dữ liệu văn bản (text) bằng một vỏ bọc đã được mã hóa bởi cặp khóa – bí mật ở cả hai chiều. Hacker có thể nhìn thấy phần gói dữ liệu, nhưng phần nội dung đã được mã hóa hoàn toàn (Hình 1.2 ).
Hình 2.4. Mô hình bảo mật được mã hóa dữ liệu ở cả hai chiều.
b. Sử dụng JQUERY để biểu diễn dữ liệu trên máy khách
Phát hành vào tháng Giêng năm 2006, JQuery là một thư viện của JavaScript được thiết kế để đơn giản hóa kịch bản phía máy khách (client-side). 27% của trên 10.000 trang web trên thế giới sử dụng thư viện này. JQuery làm cho nó dễ dàng xử lý các đối tượng DOM, sự kiện, các hiệu ứng, AJAX tự động phát hiện lỗ hổng của JavaScript, và có vô số các plugin bên thứ ba.
Ajax cho các ứng dụng web khả năng giao tiếp với máy chủ, đưa các thông tin vào máy chủ và lấy thông tin từ nó mà không cần tải lại trang. Ta sẽ thấy rằng
jQuery cung cấp các công cụ Ajax cực kì dễ sử dụng, và thực tế nó làm cho việc sử dụng Ajax trở nên đơn giản như gọi một phương thức JavaScript khác
Thư viện JQuery viết bằng javascript cung cấp các phương thức cho một bảng định dạng HTML thể hiện nguồn dữ liệu động thông qua Ajax bằng cách:
− Tạo ra thanh cuốn để điều khiển động việc tạo ra các yêu cầu dữ liệu Ajax
− Kết nối bảng hiển thị phía máy khách với các phản hồi dữ liệu Ajax động.
− Tự động gán dữ liệu phản hồi vào các ô thích hợp trên bảng hiển thị phía máy trạm theo định nghĩa ban đầu của người sử dụng.
− Cập nhật nội dung của các ô chỉ để tăng cường khả năng thực thi.
− Tận dụng dữ liệu từ bộ đệm, thậm chí với những chiến lược nén thích hợp để tăng cường khả năng thực thi.
− Dùng file jquery-1.4.2.min.js là file chính
− Truyền dữ liệu theo 2 định dạng: POST và GET tùy thuộc vào từng trường hợp cụ thể sử dụng. Ngoài ra còn có thêm các tham số truyền theo.
− Dữ liệu trả về từ máy chủ có thể là: Text, Html, Xml …. Tùy thuộc vào lập trình viên và yêu cầu cụ thể
Trong số những lợi thế, một trong những tính năng yêu thích của JQuery là khả năng tận dụng AJAX với ít nỗ lực.
Những ví dụ tiêu biểu sử dụng thư viện Jquery :
Để thực hiện cuộc gọi AJAX, ta chỉ cần:
$.ajax({
type: "POST", url: "some.php",
data: "name=John&location=Boston", success: function(msg){
alert( "Data Saved: " + msg ); }
});
jquery-1.4.2.min.js
Là file Jquery chính sử dụng cho toàn bộ trang. VD: Phân trang, Giỏ hàng, Alert …
Sử dụng cho phần tìm kiếm gợi nhớ
jquery.alerts.js
Sử dụng trong việc thông báo sản phẩm đã được thêm vào giỏ hàng
jcarousellite.js
jquery.colorbox.js
Sử dụng trong phần chi tiết sản phẩm. Xem chi tiết ảnh