Я попробовал это с jquery ‘onbeforeunload’, но не получилось, так как jquery выполнял это действие даже при обновлении страницы.
Все, что я хочу сделать, это выполнить функцию БД перед тем, как какой-либо пользователь закроет свой браузер или компьютер. Так что я могу знать, что он вышел из системы. Я хочу добавить функцию, подобную Facebook, «Вход в систему с других устройств», с принудительным выходом из системы. с других устройств.
Нет способа поймать событие закрытия браузера в JavaScript. Вы можете попробовать веб-сокет и работу CRON для достижения ваших целей.
Для веб-сокета вы можете получить общее количество подключений определенного пользователя, и если подключение становится равным 0, это означает, что пользователь закрыл все страницы (окна или вкладки) вашего веб-приложения. Кроме того, вам нужно помнить об отключении Интернета, поэтому вам нужно использовать задание CRON, это задание CRON должно выполняться каждые определенные минуты (например, 15 минут), чтобы в случае потери соединения пользователем в течение 15 минут, Вы должны автоматически выйти из системы этого пользователя.
Если у вас нет правил, например, пользователь должен быть отключен после нескольких минут простоя, тогда вы можете просто использовать веб-сокет.
в системе / библиотеки / сессии вы найдете эту строку
// Is the session current?
if (($session['last_activity'] + $this->sess_expiration) < $this->now)
{
$this->sess_destroy();
return FALSE;
}
Вы можете сделать что-нибудь в этом, если.