Я разрабатываю чат php/javascript.Как выполнить функцию ajax onbeforeunload?
Когда пользователь входит в систему, его имя пользователя вставляется в таблицу MySQL с именем queue
. Эта вставка возвращает mysql_insert_id()
, который будет храниться в переменном сеансе называется $_SESSION['CHAT_QUEUE_ID']
мне нужна строка таблицы MySQL будет удалена, когда пользователь закрывает страницу.
Я попытался следующие, но без успеха:
JS файл
window.onbeforeunload = closeSession;
function closeSession(){
$.ajax({
url: "/chat/process/chat.php",
type: "GET"
});
return "disconnected";
}
chat.php
$delete= "DELETE FROM queue WHERE id = " . $_SESSION['CHAT_QUEUE_ID'];
// query, etc
Есть ли способ сделать это?
Вы знаете, что поддержка браузера для '' onbeforeunload'' ограничен? Например. Опера не поддерживает его. – ckruse
Я не думал об этом. любое предложение? – matheusvmbruno
Общим методом является определение тайм-аута. Если у пользователя не было активности в течение определенного времени, он отключается. – ckruse