Помогите спректировать таблицу для статистики просмотров

tolik777

Новичок
Помогите спректировать таблицу для статистики просмотров

Хочу сделать для своего сайта статистику просмотре определенных страниц. Может кто уже проектировал подобное, подскажите, как лучше всего сделать.
Думаю сделать статистику просмотров не только за текущий месяц и всего, но и чтобы можно было просмотреть статистику за предыдущие месяца.
Мой вариант такой:
PHP:
CREATE TABLE shopcounts (    
id_page int(10) NOT NULL,   
tek_month int(6),
arx_month text,
PRIMARY KEY  (id_page)  
) TYPE=MyISAM;
id_page - номер страницы
tek_month - кол-во просмотров за текщий месяц
arx_month - запакованные данные(serialize) за пред. месяца
В начале каждого месяца обнуляем статистику за тек. месяц и при помощи функции serialize() запаковываем ее в arx_month, где храниться двумерный массив: месяц-год - кол-во просмотров.

Как вам такая организация? Пойдет или лучше использовать какие-то другие решения?

P.S. И еще, где бы найти весь список поисковых ботов, чтобы их неучитывать?
 

XtremallyPurpur

Новичок
Возьми какой-нибудь Open Source счетчик (counter), там и список ботов поисковых можно найти, и структуры его базы.

А, возможно, и передумаешь свой писать :)
 

Фанат

oncle terrible
Команда форума
Организация чудовищная.
если тебя интересует система статистики, то ты должен просто записывать все данные о посещении, а потом их анализировать.

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

tolik777

Новичок
Фанат
Я же не поставлю счетчик для каждой страницы? Да и мне потом эту статистику не для себя надо, а она должна выводиться сколько показана была та или иная страничка.
Все данные о посещении писать - База просто огромная получится. Кол-во просмотров страниц за сутки у меня более 10 тыс.
И как я уже говорил мне нужна именно статистика просмотров страниц и ничего больше. Мне не нужны ни хиты ни хосты, ни реферы и т.п. Это можно и в AwStats посмотреть для сайта.

И если чудовищная организация, то подскажите свой вариант реализации.

Список ботов уже нашел, взял с OsCommerce. Там неплохой вроде бы список.
 

Фанат

oncle terrible
Команда форума
Я же не поставлю счетчик для каждой страницы?
а чем это ты такой особенный? Все ставят, а тебе аллах не велит?
Да и мне потом эту статистику не для себя надо, а она должна выводиться сколько показана была та или иная страничка.
А статистика здесь тогда при чём? Пиши просто цифры от балды, и побольше. И не парься со счётчиком вовсе.
Все данные о посещении писать - База просто огромная получится. Кол-во просмотров страниц за сутки у меня более 10 тыс.
Опять - чем ты такой особенный? Хосты и с большей посещаемостью ведут логи для статистики. Если тебе не нужна статистика - так и скажи - статистика не нужна, нужен примитивный счётчик загрузок. Для такого счётчика любая организация подойдёт - хоть твоя база, хоть файл текстовый, хоть просто случайное число выводить. Это всё одинаково по ценности достоверности
 

tolik777

Новичок
ТАК И ГОВОРЮ: НУЖЕН ПРИМИТИВНЫЙ СЧЕТЧИК ЗАГРУЗОК,
МАТЬ ЕГО
 

Falc

Новичок
tolik777
Что ты ругаешься, вот тебе примитивная табличка для твоей статистики:

id_page int
mounth int ( год можно в месяца засунуть или вынести в отдельное поле)
count int

-~{}~ 07.06.05 11:34:

Да совсем забыл: PRIMARY KEY (id_page mounth)
 

slach

Новичок
http://phlogger3.phpee.com/
вот посмтри систему статистики

из дешевых еще есть
http://www.cnstats.com/ru/demo.php
 

matross

Новичок
Re: Помогите спректировать таблицу для статистики просмотров

Посмотри на форуме, young предлагает неплохую систему....
 

Falc

Новичок
tolik777

Если слодовать твоей стстеме то достаточно одного поля text и хранить в нем сеариализованный массив (а чтобы места меньше занимало еще и запоковать :) )

Я же предложил тебе нормализованую табличку для хранения сумм хитов по месяцам.
 

crocodile2u

http://vbolshov.org.ru
Поставь хотлоговский счетчик - статистика там более чем полная (ну, по крайней мере, на мой взгляд)
 

tolik777

Новичок
Falc
А понял, т.е. ты предлагаешь для каждого месяца и товара делать отдельную запись?
Я думал сделать один товар - одна запись.
Да наверное так как ты предлагаешь лучше будет, так и сделаю.

Только вот возник еще такой вопрос - всех ботов я засунул в БД и буду сравнивать с $_SERVER['HTTP_USER_AGENT']. Только вот в БД у меня к примеру запись googlebot. Я в MySQL не очень разбираюсь и не пойму как сделать сравнение: содержит запись в таблице значение из 'HTTP_USER_AGENT' или нет?
Т.е. если использовать LIKE, то он сравникает содержимое значения из правого операнда. А как сделать наоборот?
 

Falc

Новичок
tolik777
Можно через like: user_agent like %field%
Но лучше через instr
 
Сверху