09/10/2018, 23:10

Bạn nào biết Ajax ko ?

Bạn nào biết xin chỉ giúp
Khi mình đang mở trang web ajax bằng IE, ngay lúc đó trong CSDL có sự thay đổi thì khi refresh trang lại cũng không thấy được sự thay đổi ấy,chỉ có cách là phải tắt trang đó và mở lại thì mới thấy được sự thay đổi. Nhưng mình mở bằng Firefox khi refresh lại thi ok. Phải làm sao đây?
pinochu viết 01:26 ngày 10/10/2018
bấm control + F5 thử nó có refresh không?
viết 01:10 ngày 10/10/2018
Ko phải mình bấm refresh cái trang đó nó ko refresh mà nó có refresh nhưng dữ liệu xuất ra ko thay đổi, y như là nó lưu trang đó vô caching rồi ấy.
ngocdaothanh viết 01:13 ngày 10/10/2018
Bạn POST chứ đừng GET.
haicop viết 01:13 ngày 10/10/2018
Quote Được gửi bởi nguyenvinhdat
Bạn nào biết xin chỉ giúp
Khi mình đang mở trang web ajax bằng IE, ngay lúc đó trong CSDL có sự thay đổi thì khi refresh trang lại cũng không thấy được sự thay đổi ấy,chỉ có cách là phải tắt trang đó và mở lại thì mới thấy được sự thay đổi. Nhưng mình mở bằng Firefox khi refresh lại thi ok. Phải làm sao đây?
Bạn nên đọc kỹ hơn về AJAX,những kiến thức chuẩn của nó để hiểu rõ hơn về vấn đề này,Trang AJAX nó chỉ hiểu những sự thay đổi của bạn là thay đổi trên client,mặc dù CSDL đã thay đổi,đây là cái dở của AJAX (không thể back ,forward và bookmark)

Vấn đề này đã được khắc phục bằng nhiều cách,điển hình như lấy URL,history hay dùng flash nhưng chưa thống nhất và vẫn còn gặp vấn đề tương thích với trình duyệt,tôi cũng đã bị giống hệt bạn,firefox thì ok còn IE thì khóc

Bạn có thể tham khảo bằng tìm kiếm "Back forward ajax" trong google để giải quyết

Nếu trang web bạn tự viết thì còn có thể khắc phục chứ dùng mã nguồn mở thì khó đấy
viết 01:15 ngày 10/10/2018
Tức là khi insert hay update csdl se không thấy được sự thay đổi, trừ khi tắt cửa sổ trình duyệt và mở mại trang đó vì trang đó đã được lưu vô cache. Bây giờ phải ko cho nó lưu vô cach.
Minh đã có cách giải xin chia sẽ với mọi người:

Đặt header no-cache trong server-side script xử lý.
+ Với ASP :
<% Response.CacheControl = "no-cache"%>

+ Với PHP :
@header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
@header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
@header("Cache-Control: no-cache, must-revalidate");
@header("Cache-Control: post-check=0, pre-check=0", false);
@header("Pragma: no-cache");


Bây giờ thì OK hehe...
Bài liên quan
0