Добавьте его в управление сессиями.Когда пользователь начинает свою сессию, запишите его время начала.Когда пользователь заканчивает свою сессию, запишите время его окончания.Простая математика оттуда соберет вам общее количество времени, которое они тратят за сеанс на вашем сайте.
Чтобы ответить Филип Хаглунд
дано вам придется подождать, пока истечет время ожидания сеанса, и это время не отражает фактического времени, проведенного пользователем на последней странице, прежде чем он / она закрыли ее.
Это правда, нос другой стороны, все доступные на данный момент ответы работают в одной и той же базовой посылке:
- Записать время загрузки страницы.
- Записать, когда пользователь выйдет
- Обновлениетаблица базы данных
Так уж сложилось, что для входа в систему, когда пользователь покидает вас, нужны сеансы.Я не знаю другого способа в PHP отслеживать действия пользователя так, как этого хочет OP.Обновление таблицы базы данных является техническим вопросом.Вы хотите использовать работу CRON?Вы хотите использовать AJAX?Вы хотите заняться чем-то еще?
Если вы действительно хотели бы узнать, сколько активности на самом деле происходит, вы можете отправлять запросы AJAX для определенных событий JavaScript.Это свяжет отслеживание времени с фактическими событиями браузера.Конечно, это означает, что ваше отслеживание времени зависит от того, включен ли JavaScript.