Обновлять базу данных, закрыв веб-страницу

У меня есть таблица usuarios в базе данных и у него есть признак estado что может быть ACTIVO или INACTIVO, тогда, когда он инициализирует сеанс, я меняю ему состояние в ACTIVO. Я хочу, чтобы, когда закроется браузер, он изменил состояние в INACTIVO.

Они распределяющие и у них есть 3 состояния, ACTIVO, REPARTIENDO И INACTIVO, тогда, когда я распределяю ему заказы, и он выходит разделять, я меняюсь ему в REPARTIENDO , когда начинается сеанс в app ACTIVO и когда закрывается сеанс INACTIVO.

Сеанс может быть открытым единственный раз, тогда сделав login, я контролирую, что у эсперта-консультанта по юридическим вопросам не было состояния ACTIVO.

Тогда я хочу, что, закрыв браузер, я меняю ему состояние на, если он закрывает окно, и он не закрыл сеанс.

Есть какой-то способ мочь делать это? Я нахожусь в проекте Веб Java Application, он мог бы быть с Javascript, JSP Servlet, любая форма.

3
задан 29.12.2016, 15:40
2 ответа

Podr¦-схвати подписывать funci¦n в событие onbeforeunload, чтобы это помечать как бездеятельно. Событие dispararÃ: уже будьте, потому что он закрыл для другой страницу или moviÃ.

, Если случай состоял в том, что двинули другой pÃ: gina, podr¦-эксперт re-activarlo подписывая другой funci¦n в событие load

Пример:

function actualizarEstado(estado) {
  console.log(estado);
}
window.addEventListener('load', function(e) {
  actualizarEstado('activo');
});
window.addEventListener('beforeunload', function(e) {
  actualizarEstado('inactivo');
});
<a href="https://google.com">Ir a Google</a>
1
ответ дан 24.11.2019, 11:51

я не понимаю который ser¦ - в конец делания этого, entender¦ - в конец, если бы ты захотел сделать algún тип чат в реальном времени, иначе я думаю, что эта колонна mÃ: s, если ты хотел проконтролировать время sesi¦n podr¦-эксперт помещать, что después некоего времени бездействия я достал тебя из pÃ: gina в automÃ: костариканский. Как правило asà - он справляется в большинстве сайтов, так как ты можешь закрывать браузер, открывать это и продолжать с sesi¦n до тех пор, пока это время не будет выполнено. Другая вещь, которую ты можешь делать, состоит в том, чтобы разбивать с javascript, когда закроется браузер с событием "onbeforeunload" делать вызов ajax в сервер и менять состояние.

типов Привета.

0
ответ дан 24.11.2019, 11:51