Перейти к контенту

Дополнение к моду "Кто был сегодня?"


Рекомендуемые сообщения

Прошу создать дополнение к моду, отдельный код в существующий мод под 2.3.х чтобы считались не только зареганные юзеры, но и гости, например как в вобле

Всего посетителей за 24 часа: 298 (57 пользователей и 241 гостей)

 

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

Ссылка на комментарий
Поделиться на других сайтах

установите в таблице сессий лимит времени не 15 минут, а 24 часа, вот вам и установленный мод

правда хз что будет с базой данных, ну да впрочем другого способа решения задачи впринципе нет

заводить новую таблицу, которая будет работать параллельно с таблицей сессий? пффф

Ссылка на комментарий
Поделиться на других сайтах

http://pic.ipicture.ru/uploads/090130/TVZm66jW85.jpg

лицезреем ответ и перестаем включать дурака

 

объясняю, гости не учитываются в этом моде, потому что он берет из базы данных всех пользователей по полю последнего визита!

нет там никаких гостей!

единственное место, где они есть - таблица сессий

а в настройках оптимизации можно увеличить время (15 минут до 1440 минут или как там)

вот вам и гости

а если просить улучшить мод, то это ниРАЗУ не

просто небольшие изменения требуются в файле стилей

 

это всех гостей надо учитывать и писать в какую-нибудь дополнительную таблицу, писать по различию в ip адресе

и очищать как-то эту таблицу, что приведет к написанию модуля таска

это процентов 500 от имеющегося объема мода

Ссылка на комментарий
Поделиться на других сайтах

Проще выдачу Google Analytics отпарсить. А лучше не парсить, а самому смотреть, вашим пользователям разве от этих чисел будет жарче? :D
Ссылка на комментарий
Поделиться на других сайтах

Sannis, будет конечно )) я вопрос задал не про 24 часа, а про изменения в моде "whois online today", вот взгляните на vbulletin:

http://s43.radikal.ru/i102/0901/94/6214c1282d33t.jpg

 

обратите внимание!! второе меню как наш IPB мод "whois online today", там показываются все юзеры бывшие за последние 24 часа а в верхней строчке прописано сколько было всего юзеров, сколько из них гостей (гости в список не вносятся) и сколько зареганых юзеров. Всего навсего в моде "whois online today" надо в строчке "Сегодня посетили форум" прописать не только учёт визитов юзеров, но и визиты гостей, т.е сколько уникальных IP посетило форум

Ссылка на комментарий
Поделиться на других сайтах

объясняю еще раз

гости не учитываются в этом моде, потому что он берет из базы данных всех пользователей по полю последнего визита!

нет там никаких гостей!

единственное место, где они есть - таблица сессий

а в настройках оптимизации можно увеличить время (15 минут до 1440 минут или как там)

вот вам и гости

( http://pic.ipicture.ru/uploads/090130/TVZm66jW85.jpg )

а если просить улучшить мод, то это ниРАЗУ не

просто небольшие изменения требуются в файле стилей

 

это всех гостей надо учитывать и писать в какую-нибудь дополнительную таблицу, писать по различию в ip адресе

и очищать как-то эту таблицу, что приведет к написанию модуля таска

это процентов 500 от имеющегося объема мода

Ссылка на комментарий
Поделиться на других сайтах

Polcovnic Colt, давайте проведём опрос на вашем форуме? :D

 

Если вам не жалко БД, то можно сделать, Архар изложил алгоритм. Либо по моему варианту, но это будет не массовый мод уже.

Ссылка на комментарий
Поделиться на других сайтах

БД мне жалко, и причём сильно, вот вы смотрели мой скрин ?? второе меню как наш ИПБ мод, но там без настроек оптимизации и 1440 минут считает гостей. я понимаю теперь что был неправ по поводу лёгкости изменений, а может у кого есть возможность создать этот отдельный скрипт для моды, для подсчёта кол-ва гостей. вот на скрине в вобле считает же как-то.
Ссылка на комментарий
Поделиться на других сайтах

Если Вам так хочется считать всех гостей, напишите самый простой скрипт, который будет учитывать все хосты (или посетителей по ip и браузеру), а затем просто вычитайте из этого значения кол-во зареганных юзеров и поисковиков.

Вот и все

и никакой нагрузки на БД :D

Ссылка на комментарий
Поделиться на других сайтах

и никакой нагрузки на БД :D
Можете хранить эти данные в файле, нагрузка будет одинаковой.

 

Как говорится -- возьмите и напишите ;)

Ссылка на комментарий
Поделиться на других сайтах

`Maksik, я не програмист, ни php ни что-либо другое не изучал, если вы говорите что это так просто и знаете как зделать, может быть вы подсобите нам в этом вопросе? будем вам безмерно благодарны за скриптик :D
Ссылка на комментарий
Поделиться на других сайтах

Если вам не жалко БД, то можно сделать, Архар изложил алгоритм. Либо по моему варианту, но это будет не массовый мод уже.

Могу предложить простой и ненагрузочный алгоритм:

 

1. Создается таблица member_id | ip_adres | time

2. В тех участках кода, где производится удаление из таблицы сессий, добавляется несколько нетяжелых запросов:

2.1. Запрос удаляемых значений из таблицы сессий.

2.2. Проверка в новой таблице по айдишнику для юзеров и по айпишнику для гостей.

2.3. Добавление новых.

2.4. Удаление по полю time если больше 24 часов истекло.

 

Даже если будет 1000 посетителей в сутки, эти 4 запроса отнимут не больше 0,003-0,005 секунды.

Ссылка на комментарий
Поделиться на других сайтах

Думаю, можно сделать следующим образом.

 

1. В ibf_cache_strore добавляем ещё один кеш. В нём - количество гостей за день.

 

2. В class_sessions ищем функцию create_guest_session. Добавляем в неё апдейт на +1 гостя.

 

Функция вызывается только в том случае, если на форум впервые зашёл настоящий чистокровный гость. Т.е. если у него пустой session_id. Для поисковых ботов и при перемещении нормального гостя по страницам вызываются другие функции.

 

3. Загружаем наш кеш в act=idx. Выводим напрямую в шаблоне online_today.

 

4. Добавляем в таск ежедневного пересчета в 0 часов дополнительное действие на обнуление кеша.

 

+++

 

Быстро и сердито.

 

При этом, разумеется, мы не добиваемся идеальной точности, т.к. кол-во гостей можно накрутить при помощи целого ряда способов. Но, тем не менее, в 95% случаев мы будем получать картину, довольно близкую к истине.

 

Скорее всего, мод для булки работает именно таким образом.

Ссылка на комментарий
Поделиться на других сайтах

2. В class_sessions ищем функцию create_guest_session. Добавляем в неё апдейт на +1 гостя.

Если с одного айпишника заходить с интервалами больше 15 минут, каждый заход будет считаться новым гостем.

 

Но в целом, да, конечно, так в разы проще, а ошибка если и будет, то в единицы процентов.

Ссылка на комментарий
Поделиться на других сайтах

1. В ibf_cache_strore добавляем ещё один кеш. В нём - количество гостей за день.

 

2. В class_sessions ищем функцию create_guest_session. Добавляем в неё апдейт на +1 гостя.

 

Функция вызывается только в том случае, если на форум впервые зашёл настоящий чистокровный гость. Т.е. если у него пустой session_id. Для поисковых ботов и при перемещении нормального гостя по страницам вызываются другие функции.

 

3. Загружаем наш кеш в act=idx. Выводим напрямую в шаблоне online_today.

 

4. Добавляем в таск ежедневного пересчета в 0 часов дополнительное действие на обнуление кеша.

 

+++

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.