Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Счётчики и статистика.
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
Добрый день.
Как вести статистику?
Просмотры это понятно при каждом обновлении +1 к общему количеству.
А как быть с посещениями?
1 - Я сейчас делаю таким образом - стартую сессию при заходе пользователя на сайт, затем проверяю есть ли в ней переменная, если нету то +1 к посещениям если есть то +1 к просмотру. метод хорошо тем что 1 день 1 запись. минусы неубодно собирать и обрабатывать подробную статистику (ip реферал браузер итд...)
2 - Можно сделать по IP но не так хорошо тем более на 100 посещений 100 записей мне не нравится эта идея. Плюсы подробная статистика итд.
может кто то делал ещё как то?
Slavenin
Отправлено: 28 Июня, 2011 - 18:39:15
Посетитель
Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010 Откуда: Тверь
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
это то понятно, сторонних статистик много очень (: вопрос про свою )) + к этому надо статистику в CMS выводить
OrmaJever
Отправлено: 28 Июня, 2011 - 19:02:28
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Вначале бы определить просмотры чего? Страницы или видео например?
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
DiosPA
Отправлено: 28 Июня, 2011 - 19:15:25
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
страниц - с просмотрами всё понятно трудности с посещениями
OrmaJever
Отправлено: 28 Июня, 2011 - 19:28:58
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Я щас сижу и немогу вспомнить разницу между просмотрами и посещениями Подскажи)
Ну просмотры надо делать по сесии однозначно, иначе просто будут обновлять страницы и набивать просмотры, а про посещения напишу когда вспомню
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
DiosPA
Отправлено: 28 Июня, 2011 - 19:49:50
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
Смотри:
Просмотреть 1 страничку пользователь может хоть 1000 раз за 1 день
А посетить сайт может только 1 раз в сессию то есть сессия ~12 часов хранится
OrmaJever
Отправлено: 28 Июня, 2011 - 20:04:45
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
DiosPA пишет:
Просмотреть 1 страничку пользователь может хоть 1000 раз за 1 день
по каким формулам считал?
DiosPA пишет:
А посетить сайт может только 1 раз в сессию то есть сессия ~12 часов хранится
Если нету авторизации пользователей то тогда только по ip. Можно создать таблицу, и при заходе на сайт писать туда ip пользователя и время посещения, при след. заходе проверять (есть ли запись в бд && дата != сегодня) то обновлять жту запись на сегодняшний день. Вот както так
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
DiosPA
Отправлено: 28 Июня, 2011 - 20:11:10
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
я предлагал вариант с ip конечно, но мне он не очень нравится )
я просто думаю может есть ещё какие варианты ))
OrmaJever
Отправлено: 28 Июня, 2011 - 20:17:35
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
DiosPA пишет:
я просто думаю может есть ещё какие варианты ))
Какие? По отпечатку пальца или по сечатке глаза? Вот сам подумай как можно отличить пользователя в интернете?
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
DiosPA
Отправлено: 28 Июня, 2011 - 20:22:22
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011 Откуда: Россия
Помог: 2 раз(а)
Цитата:
по отпечатку
кстати в виндовс 8 фишка почти такая )))
мол паролей нет а 2д камера будет смотреть владелец\или нет
PS. нет ну всё таки может както было можно... О_о потому и спрашивал )
у меня статистика так выводится за 6 дней Прикреплено изображение (Нажмите для увеличения)
OrmaJever
Отправлено: 28 Июня, 2011 - 21:49:43
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
DiosPA пишет:
мол паролей нет а 2д камера будет смотреть владелец\или нет
2д камера будет ити в комплекте?
DiosPA пишет:
нет ну всё таки может както было можно... О_о потому и спрашивал )
Ну ты вначале придумай какойнибудь способ (ну например те же куки), а потом поставь себя на место пользователя и подумай как ты сможешь этот способ обойти. В интернете точно определить пользователя нельзя, даже тот же ip можно подделать.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Мелкий
Отправлено: 28 Июня, 2011 - 22:24:53
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
OrmaJever пишет:
Если нету авторизации пользователей то тогда только по ip.
А кука? Статистика в любом случае будет врать, но привязка к куке позволит видеть пользователей за натами.
Та же метрика следит по куке yandexuid.
Покинул форум
Сообщений всего: 823
Дата рег-ции: Нояб. 2010
Помог: 32 раз(а)
Сам только что закончил написание статистики для своих клиентов. Весь алгоритм описывать лень но основные принципы такие:
1) Для каждого сайта отводится отдельная таблица (решил так, потому что сайтов для слежки штук 30, и громадить крокодила со связанными таблицами не захотел)
2) При загрузки страницы берем следующие данные: ip, useragent ну и всякую дребедень типа времени, разрешения монитора, часовой пояс, реферер и тд.
3) Из ip и useragent лепим md5 кеш.
4) Перед внесением данных в базу проверяем, есть ли в базе строка с таким же md5, url и временем с разностью не больше чем в 10 минут от "сейчас". Если есть, то значит страница просто обновилась а не загрузилась впервые.
5) Если проверка отрицательная то вносим строку, предварительно проверяя md5 и время с разностью в 10 минут (уже без url). Если проверка положительная, значит это продолжение маршрута и левые данные (useraget, часовой пояс, разрешение экрана) в базу не добавляем.
6) Если проверка отрицательная, то вносим все данные, и считаем это началом маршрута.
Зверек у меня получился довольно таки грузовой, но зато благодаря тому, что в базе хранятся все записи о всех хитах и хостах, я могу просматривать подробную статистику о любом маршруте за любое число. А это именно то, что мне было нужно, потому что подобной штуки я нигде так и не нашел, в том числе и на метрике.
----- ____________________________________________________________________
Ну как то так, наверное. http://grefon[dot]com
vlados
Отправлено: 28 Июня, 2011 - 23:35:24
Посетитель
Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011
Помог: 1 раз(а)
[+][+][+]
DiosPA введите статистику с датой и ип, но файлы, лучше делать текстовую бд, держать на другом анлимитед хостинге. Например народ. Или Сохраняйте на серваке, а потом кроном в 00:01 чистите.
Я делаю так.
1. Собираю все возможную инфу о пользователе. Добавляю это все в бд. А в конце дня крон все это отправляет на сайт на народе, и чистит бд.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.