PHP

Статистика переходов на отдельную страницу сайта

Рассмотрим создание статистики просмотров отдельной страницы сайта. Алгоритм сбора статистики очень прост:

получаем значения переменных окружения
дописываем (a+) информацию в служебный файл

Преимущества алгоритма:

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

Для получения значений переменных окружения воспользуемся знаниями из статьи "PHP: Информация о посетителях сайта". По своему вкусу выберем несколько наиболее значимых переменных: название агента, ip-адрес и адрес предыдущей страницы, откуда был совершен переход.

Чтобы файл статистики не рос бесконечно, введем проверку на размер файла.

А вот и сам код php-скрипта, выполненный в виде функции. Функцию необходимо поместить в общий файл функций, используемых на сайте, или же в отдельный файл. Во втором случае перед вызовом функции статистики нужно подключить созданный файл с функцией с помощью команды include().
function pg_log($pg){
 $pg_f="pagelog/".$pg; // здесь будут храниться файлы статистики

 $m=date("H:i:s d.m.Y",time().'|';
 $m.=getenv("REQUEST_METHOD").'|'.getenv("HTTP_USER_AGENT").'|'.
     getenv("REMOTE_ADDR").'|'.urldecode(getenv("HTTP_REFERER"))."\n";

 $f = @fopen($pg_f, "a+" );
 @fputs ($f, $m);
 @fflush($f);
 @fclose($f);
 @chmod($pg_f, 0666);
 if ((filesize($pg_f))>250000){ @unlink($pg_f); }
}

Не забудьте отфильтровать переменные окружения, отсеивая все опасные символы.

Вызов функции, например, такой:
<?php
  pg_log("page1");
?>

В файловой системе сайта должен быть создан каталог pagelog с атрибутами 0777, в котором будет создаваться и дополняться информацией файл page1.

За время тестирования работы алгоритма на одной из страниц сайта (прошло примерно 20 часов) было замечено появление поисковых пауков от Rambler и Google. Вот Вам и ещё одно полезное свойство данного алгоритма - можно всегда быть в курсе даты и времени прихода поисковых пауков на страницу.
Добавлено: 24 Августа 2013 04:35:42 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...