Как мне создать базу данных счетчиков загрузок? MySQL PHP - PullRequest
3 голосов
/ 26 января 2011

Я хотел бы создать счетчик загрузок для моих файлов.Вот мои текущие поля таблицы:

download_counter table
_______________________
ID - int(6) - AutoInc,
Product - varchar(128),
Version - varchar(128),
Date - date,
IP's - LONGTEXT

Мне интересно, должен ли я использовать свою текущую таблицу или мне следует использовать более динамичную и гибкую таблицу, например:

ID - int(11) - AutoInc,
Product - varchar(128),
Version - varchar(128),
Date - date,
IP - varchar(45)

Ответы [ 2 ]

4 голосов
/ 26 января 2011

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

Примечание: если вы хотите сохранить IP-адрес в MySQL, обратите внимание на функции INET_NTOA и INET_ATON. Они преобразуют IP-адрес в точечных обозначениях в 32-разрядные целые числа, что позволяет хранить адрес в 4 байтах, а не в 15 байтах. Они также должны быть целыми числами без знака.

3 голосов
/ 26 января 2011

Я бы действительно нормализовал вашу таблицу должным образом:

download_counter {
   did,
   prodid,
   dldstamp,
   ip
}

и проследил бы за ней по таблице продуктов:

product_table {
   prodid,
   version,
   description,
   url,
   lastmodified,
   etc;
}

И вы просто добавили бы в свой download_counter запрос на загрузку, ссылаясь на prodid , из вашего product_table.

Достаточно просто и легко нормализуется.Затем вы будете управлять своими продуктами / загрузками в отдельной таблице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...