У меня есть Ajax-запрос, который вызывается каждую минуту, и обновляет последнюю активность DateTime зарегистрированного пользователя в базе данных.Моя проблема в том, что он обновляет несколько пользователей и должен обновлять только того, кто вошел в систему.
Когда я вызываю функцию по ссылке, она работает хорошо (обновляет только вошедший в систему), но когдаAjax-запрос называется обновлением нескольких пользователей.
Какая-то идея, что не так или почему он это делает?
Ajax-запрос вызывается каждую минуту, если пользователь онлайн
function update_user_activity() {
$.ajax({
url: 'updateActivity',
method: 'post',
cache: false,
});
<?php
use App\Session;
if (Session::exist('id')) :
?>
setInterval(function () {
update_user_activity();
},60 * 1 * 1000);
<?php endif; ?>
}
Метод, который обновляет дату и время последнего действия
public function updateActivity() {
if (!$this->authenticator->isLoggedIn()) {
$this->redirect('signin');
}
$params = [
'last_activity' => date("Y-m-d H:i:s", STRTOTIME(date('h:i:sa'))),
'id' => Session::get('details_id')
];
$this->userDetails->patch($params);
}
Сессия имеет только details_id
, поэтому я не понимаю, почему обновляется также другой пользователь.
Спасибо.