У меня есть html-страница, откуда я периодически звоню:
function logon(id) { $.get("data.php", { action: 'online', userID: id}, function(data){ $("#msg").html(data); }); }
Что это значит, он вызывает этот SQL-скрипт в data.php:
$sql = "update user_sessions set expires=(expires + 2) where userID = $userID"; mysql_query($sql, $conn) or die(mysql_error()); echo $sql;
Я вижу по echo, что синтаксис sql и значения верны, но ИЗМЕНЕНИЯ К ИХ ИСКЛЮЧЕНИЮ ПОЛЯ НЕ СДЕЛАНЫ, ТОЛЬКО В IE8 !! Он отлично работает в других ff, safari, chrome, ie6 и 7.
Для создания этого вызова sql нет ничего конкретного браузера, но таблица user_sessions используется для хранения сеансов PHP. Im только увеличивает время истечения сеанса при вызове. Что в обработке сеансов IE8 препятствует изменению времени сеанса? Есть ли какие-либо проблемы с кешированием или cookie, которые необходимо изменить?
Используйте .post, чтобы гарантировать, что кеширование не загрязняет вещи.
Загрузите и установите Fiddler, чтобы убедиться, что вызов Ajax отправлен на сервер. Возможно, существует некоторая несовместимость JavaScript-кода ie8, которая предотвращает стрельбу Ajax ?.