Ну, что происходит, когда пользователи заходят на ваш сайт?Сеанс создается на стороне сервера, связывая будущие запросы пользователей с логином.Это должно произойти, потому что сам HTTP не имеет состояния - то есть он не будет знать, что человек, запрашивающий страницу своего профиля, тот же, что только что прошел проверку подлинности, если только клиент не отправит обратно некоторую информацию, обычно cookie илиреже в настоящее время - идентификатор сеанса в URL.
Это означает, что где-то на вашем сервере у вас уже есть информация о том, сколько людей вошли в систему (т.е. имеют текущий сеанс).Если вы используете веб-фреймворк, возможно, вам придется изучить детали управления сессиями.Если нет, то вы уже решили проблему;просто выясните, где хранятся сеансы и вуаля, вы знаете, какие пользователи онлайн.
Конечно, вы не знаете, ушел ли пользователь без выхода из системы, но эту проблему нелегко решить;Системы управления сеансами обычно прекращают сеанс после определенного периода бездействия (т. е. ваш сервер в последнее время не получал никаких запросов), поэтому вы можете просто использовать все, что эта система говорит вам для начала.Если вы хотите чего-то большего, вы можете самостоятельно отслеживать последнее действие и решить, что пользователь неактивен, если это действие прошло более n
минут в прошлом.