PHP. Пишем счетчик просмотров для каждой страницы сайта на php

На некоторых сайтах часто можно увидеть следующую надпись внизу страницы или под статьями: «Всего просмотров xxx. Сегодня xx». На первый взгляд ничего примечательного, но все равно, многим интересно, как это сделано.
В этой статье я попробую рассказать вам о том, как устроена данная статистика просмотров страниц сайта, на самом простом примере, написанном на phpСтатистика просмотров страниц будет работать на связке MySQL + PHP. Основным отличием этой статистики от других будет то, что MySQL таблица будет занимать очень мало места, но при этом нельзя будет точно сказать какую именно страницу и сколько раз просмотрели. А все из-за того, что все url будут хешированны с помощью php функции md5(), что гарантирует почти 100% неповторяющихся id для каждой страницы сайта. Делается это исключительно для ускорения работы php скрипта (при условии, что индексом является id страницы) и уменьшения размеровMySQL таблицы (за счет отсутствия длинных url).



MySQL таблица будет иметь следующую структуру:

page_id – уникальный id для каждой страницы сайта сгенерированный php функцией md5().
all – значение всех просмотров данной страницы.
today – просмотров страницы сегодня.
date – дата возвращаемая php функцией time() + 24 часа

Для правильного учета посещений страниц значение поля date будет изменяться, тогда, когда текущая дата будет больше той, что указанна в таблице. В этот же момент будет происходить и обнуление счетчика просмотров страницы за сутки.

Почти весь php скрипт статистики просмотров для каждой страницы сайта состоит в основном из функций, которые выполняют строго определенную роль. Все функции прокомментированы, поэтому, надеюсь, все поймете сами.

PHP код скрипта статистики просмотров страниц сайта:

Вот в принципе и весь php скрипт статистики просмотров страниц сайта. Для того, что бы он работал, его нужно «подключить» к нужному вам скрипту, например к index.php, добавив в index.php строчку include(‘ counter.php ‘);. А в том месте, где должно находиться сообщение о том, сколько человек просмотрело данную страницу – строчку echo Today_and_all_counter;..

I believe wecan be on the job twentyfour hours a http://www.buyessayonline.ninja/ day
Вы можете оставить ответ, или trackback с вашего сайта.

Leave a Reply

Надо сделать сайт? Мы выгодно сделаем сайт! ©