Текущее количество пользователей...

DrCZ

Новичок
Текущее количество пользователей...

Доброе время суток! Прошу помочь разобраться с проблемой:
Необходимо узнать, сколько в данный момент пользователей на сайте...

Нашел скрипт для этого через сессии, но он не подходит, так как нужно узнать не только цифру, но и имена пользователей...
 

Andreika

"PHP for nubies" reader
DrCZ
скажи честно - ты действительно считаешь, что первый столкнулся с таким вопросом? или ты считаешь, что поиск тебе не поможет? или быть может ты уже искал и не получилось? может неправильно искал?
откуда скрипт должен брать имена пользователей?
 

DrCZ

Новичок
искал, но не нашел ответа...

Ну вот допустим если имена пользователей скрипт будет брать из БД...
А что разве можно это из сессий делать?
 

Andreika

"PHP for nubies" reader
DrCZ
ты как-то плоско понимаешь "сессии"..
сессии могут храниться и в бд, в сессиях мона хранить разные данные... что ты в них хранишь я не знаю, но кто мешает записать туда имя пользователя?
ЗЫ. если сессии хранятся в файлах, то я могу себе представить такой скрипт.. но с трудом, если честно... используй базу
 

DrCZ

Новичок
Хорошо, но потом как удалять из БД запись? Не будет же пользователь перед выходом всегда использовать LOGOUT...
 

Andreika

"PHP for nubies" reader
для этого хранят время последнего(примерно) действия и считают пользователя неактивным через например 10 минут... в запросе выбираются все пользователи с временем за последние 10 минут... временами база очищается от лишних сессий
 

Фанат

oncle terrible
Команда форума
10 минут = это очень много.
нет таких сайтов.

зачем чистить базу от сессий тоже совершенно непонятно.
равно и при чём здесь сессии вообще
 

Andreika

"PHP for nubies" reader
Фанат
если использовать вариант с бд и session_set_save_handler , у которого последним параметром идет callback-функция gc для "чистить базу от сессий"...

10 минут = это очень много.
вродь обычно 15.. все индивидуально в общем
 

DrCZ

Новичок
Точно! Добавлю в БД дату захода на сервер пользователя, и при считывании сделаю показ только пользователей, дата которых не привышает N минут...

А вообще вот вопрос: можно ли чистить базу данных через планировщик задач Windows? Допустим каждый час автоматом открытие страницы PHP с запросом на очищение тех или иных записей? Если нет, то как можно автоматически сделать подобную "чистку"?
 

Фанат

oncle terrible
Команда форума
Andreika
если использовать вариант с бд и session_set_save_handler , у которого последним параметром идет callback-функция gc для "чистить базу от сессий"...
осталось только ответить на вопрос зачем вообще запихивать сесси в базу и использовать сессии для показа размера пиписьки на сайте.
а так - да, всё верно.
вродь обычно 15.. все индивидуально в общем
Да что ты говоришь!
то есть, ты так по сайтам и ходишь - откроешь страницу, и сидишь, 15 минут на неё медитируешь? потом -новую откроешь, и снова сидишь?
Ну, здравствуй, дорогой финский друг.

-~{}~ 26.03.06 16:52:

DrCZ
Базу можно читсить тем же скриптом, который показывает вожделенную цыферку.

но я тебе предлагаю не париться, а просто написать 100.
и всех делов.
точность та же, а трудов в 10 раз меньше.
 

Andreika

"PHP for nubies" reader
Фанат
у него есть не просто количество.. у него есть некие пользователи )

Ну, здравствуй, дорогой финский друг.
у меня сейчас 23:53
открываю страницу http://www.phpclub.ru/talk/online.php?s=

vadim Viewing Thread Некорректно работает PHP5 23:24
tomin Viewing Forum PHP & Mysql 23:25
и т.д.
мож глюк, мож друзья из соседних государств
 

Sam

Новичок
Фанат
так как пиписька индивидуальна для каждого посетителя он сессии и использует.
насколько это нужно - другой вопрос
то есть, ты так по сайтам и ходишь - откроешь страницу, и сидишь, 15 минут на неё медитируешь? потом -новую откроешь, и снова сидишь?
15 мин можно читать что-нить ещё
 

Фанат

oncle terrible
Команда форума
DrCZ
делаешь таблицу в базе, из двух полей.
имя и время.
при показе каждой страницы делаешь три запроса:
1. REPLACE, который заносит текущего юзера
2. DELETE, который удаляет все записи, разнича времени которых больше трёх минут с текущим.
3. SELECT, который выводит все записи из таблицы.

-~{}~ 26.03.06 17:01:

Sam
сессии не имеют с количеством посетителей на сайте ничего общего.
если не можешь это понять, то рекомендую просто запомнить

-~{}~ 26.03.06 17:02:

15 мин можно читать что-нить ещё
вот задача стоит показать, сколько пользователей НА САЙТЕ, а не сколько "читающих что-нить ещё"
 
Сверху