Показ юзеров, которые находятся на сайте

Edson

Новичок
Показ юзеров, которые находятся на сайте

Товарищи, помогите и подскажите идеи о том как реализовать показ на сайте юзеров и гостей, которые сейчас находятся на сайте...

Я так понял нужно устанавливать в базе на каждого юзера, который в онлайне флаг, а потом выполнять запрос в базу и отображать результат запроса.

Меня интересует именно вопрос как вычислить то, что пользователь вышел с сайта...
 

Cougar

Кошак
Edson
Двумя способами. 1 - пользователь жмёт "выход", после чего в базе каким-либо способом отмечается, что юзер в оффлайне. 2 - задается некое время, в течение которого юзер считается активным. Если в течение этого времени юзер ничего не делает (т.е. не обращается к серверу) - значит, он уже ушел.
 

Edson

Новичок
Автор оригинала: Cougar
Edson
Двумя способами. 1 - пользователь жмёт "выход", после чего в базе каким-либо способом отмечается, что юзер в оффлайне. 2 - задается некое время, в течение которого юзер считается активным. Если в течение этого времени юзер ничего не делает (т.е. не обращается к серверу) - значит, он уже ушел.
Спасибо. Второй способ лучше, а то наши люди кнопку выход никогда не нажимают...

А что значит задать время? Специальное поле для юзера ввести и там хранить время последнего обращения, а потом со следующим пользователем проверять и удалять пользователей из актива, время которых превысило какой период?
 

Cougar

Кошак
Автор оригинала: Edson
Спасибо. Второй способ лучше, а то наши люди кнопку выход никогда не нажимают...
Оба способа вместе надо использовать.

Автор оригинала: Edson
А что значит задать время? Специальное поле для юзера ввести и там хранить время последнего обращения, а потом со следующим пользователем проверять и удалять пользователей из актива, время которых превысило какой период?
Именно так. Только удалять ничего не надо - достаточно просто при выборке ограничить по дате и времени последнего действия.
 

Steamroller

Новичок
Специальное поле для юзера ввести и там хранить время последнего обращения, а потом со следующим пользователем проверять и удалять пользователей из актива, время которых превысило какой период?
Примерно так. Только лучше не спец. поле, а отдельной таблицей (с полями user_id, last_activity), чтобы записями в эту таблицу не лочить большую таблицу и не сбрасывать кеши.
 

Edson

Новичок
Автор оригинала: Cougar
Оба способа вместе надо использовать.


Именно так. Только удалять ничего не надо - достаточно просто при выборке ограничить по дате и времени последнего действия.
про удалять я так образно сказал.... всем спасибо за хорошие ответы...

-~{}~ 02.10.05 17:42:

А для гостей - ввести спец. таблицу и туда заносить айпишник и время последней активности.. а потом сверять айпишник гостя и апдейтить соответ. запись в базе? со следующим пользователем выполнять проверку на устарелость записей гостей и удалять поля неактивных гостей из базы?
 

Steamroller

Новичок
Автор оригинала: Edson

А для гостей - ввести спец. таблицу и туда заносить айпишник и время последней активности.. а потом сверять айпишник гостя и апдейтить соответ. запись в базе? со следующим пользователем выполнять проверку на устарелость записей гостей и удалять поля неактивных гостей из базы?
Ага, можно ещё пытаться куку ставить, а то есть провайдеры типа AOLа, у который айпишник от запроса к запросу меняться может (хотя на русскоязычном сайте таких посетителей редко много бывает).
 

Edson

Новичок
Автор оригинала: Steamroller
Ага, можно ещё пытаться куку ставить, а то есть провайдеры типа AOLа, у который айпишник от запроса к запросу меняться может (хотя на русскоязычном сайте таких посетителей редко много бывает).
куку ставить? рэндомить значение куки и устанавливать пользователю, потом заносить в базу "значение куки", "время"? при следующем заходе проверять есть ли у пользователя переменная куки - если есть искать значение в базе и апдейтить время, если нет - в начало? я правильно понял?
 

Steamroller

Новичок
Не совсем так. Грубо говоря создаешь таблицу (id, ip, cookie), тех кто приходит без куки - идентифицируешь по ip, тех кто с ней - по ней. А при первом хите (когда куки еще нету) - пишешь только ip.
 

Edson

Новичок
понятно.... Спасибо за ответы. Алгоритмизация понятна - буду реализовывать...
 
Сверху