Отслеживание посетителей, с использованием PHP

Есть много различных инструментов анализа трафика, начиная от простых счетчиков для завершения анализа трафика. Хотя Есть некоторые из них бесплатно, большинство из них приходят с ценником. Почему бы не сделать это самостоятельно? В PHP, вы можете легко создать файл журнала в течение нескольких минут. В этой статье я покажу вам, как!


Начало информации
Наиболее важной частью является получение информации из вашего посетителя. К счастью, это очень легко сделать в PHP (или любой другой язык сценариев на то пошло). PHP имеет специальной глобальной переменной $ _SERVER, который содержит несколько переменных окружения, в том числе информация о ваших посетителей. Чтобы получить всю информацию, которую хотите, просто используйте следующий код:

/ / Получение информации
IP-адрес $ u003d $ _SERVER ['REMOTE_ADDR'];
$ Страницы u003d "
$ Страницы .u003d IIF (! Пусто ($ QUERY_STRING _SERVER [']), "?{$_ SERVER [' QUERY_STRING']}", "");
$ Перехода u003d $ _SERVER ['HTTP_REFERER'];
$ DATETIME u003d mktime ();
$ UserAgent u003d $ _SERVER ['HTTP_USER_AGENT'];
$ u003d @ RemoteHost getHostByAddr ($ IP-адрес);

Как вы можете видеть большая часть информации исходит от переменной $ _SERVER.

Примечание: Я использовал функции в приведенном выше примере называемые IIF (). Вы можете получить эту функцию на

Вход информации
Теперь, когда у вас есть все необходимую информацию, она должна быть записана в лог-файл, чтобы вы в дальнейшем могут смотреть на него, а также создавать полезные графиков и диаграмм. Для этого нужно несколько простых функций PHP, как и FOPEN FWRITE.

Код будет сначала создать полную линейку из всей информации. Затем он откроет файл журнала "Добавить" режиме, и если он еще не существует, создайте его.

Если нет ошибки действительно имели место, он будет писать новые лаглинь в лог-файл, на дне, и, наконец, закрыть файл журнала еще раз.

/ / Создание строке журнала
$ u003d $ Лаглинь IP-адрес. '|'. $ Перехода. '|'. $ DateTime. '|'. $ UserAgent. '|'. $ RemoteHost. '|'. $ Странице. "
";

/ / Записать в лог-файл:
$ LogFile u003d '/ некий / путь / к / с / logfile.txt;

/ / Открыть файл журнала "Добавить" режиме
если (! $ u003d ручка Еореп ($ лог, '+')) (
умереть "(" Не удалось открыть файл ");
)

/ / Записываем $ лаглинь нашей лог.
если (FWRITE ($ ручкой, $ лаглинь) u003du003du003d FALSE) (
умереть "(" Не удалось записать в лог-файл ");
)

fclose ($ ручки);

Теперь у вас есть полностью функции регистрации модуля. Чтобы начать отслеживать активность посетителей на ваш сайт просто включить модуль регистрации на своих страницах с включите () функции:

включать ('log.php');

Хорошо, теперь я хочу видеть мой лог-файл
Через некоторое время вы, вероятно, хотите, чтобы просмотреть файл журнала. Вы можете легко это сделать, просто с помощью стандартного текстового редактора (например Блокнота "Windows), чтобы открыть файл журнала, но это далеко от желаемого, потому что в жестком для чтения формате.

Давайте использовать PHP для создания полезные обзоры как. Первое, что нужно сделать, это получить содержимое из файла в переменную, например так:

/ / Открываем файл журнала
$ LogFile u003d "G rojectsphpitcontentrack посетителям сайта phplog.txt ";

если (file_exists ($ лог)) (

$ Ручкой u003d Еореп ($ лог, "г");
$ u003d Журнала Фред ($ ручкой, размер файла ($ лог));
fclose ($ ручки);
) (Другое
умереть ("файл журнала не существует!");
)

Теперь, когда файл журнала в переменной, то лучше, если каждый лаглинь в отдельных переменных. Мы можем сделать это, используя взорваться () функцию, вот так:

/ / Отделять друг от друга лаглинь
$ u003d Взорваться журнала ("
", Отделка ($ журнала));

После этого он может быть полезен для получения каждой части каждого лаглинь в отдельной переменной. Это может быть сделано через каждый цикл лаглинь и использование взорваться снова:

/ / Отдельная каждой части в каждом лаглинь
для ($ I u003d 0, $ я <кол-во ($ журналов), $ я + +) (
$ Журнал [$ я] u003d отделкой ($ журнал [$ я]);
$ Журнал [$ я] u003d $ взорваться ('|', журнал [$ я]);
)


Теперь полный лог-файл был разобран, и мы готовы приступить к генерации некоторые интересные вещи.

Первое, что очень легко сделать, это получить количество просмотров страниц. Просто используйте оценок () в массив $ журнал, и там вы имеете его;

кол-эхо ($ журнала). "Человек посетили этот сайт.";

Вы также можете создать полное представление о вашем журнале с помощью простого цикла Еогеасп и таблиц. Например:

/ / Показать таблицу лог
эхо '<table>;
эхо '<th> IP-адрес </ м>';
эхо '<th> реферера </ м>';
эхо '<th> Дата </ м>';
эхо '<th> UserAgent </ м>';
эхо '<th> удаленного узла </ м>';

Еогеасп ($ войти как $ лаглинь) (
эхо '<tr>;

эхо '<td>. $ Лаглинь ['0 ']. "</ TD> ';
эхо '<td>. urldecode ($ лаглинь ['1 ']). "</ TD> ';
эхо '<td>. Дата ('д / м / Y', $ лаглинь ['2 ']). "</ TD> ';
эхо '<td>. $ Лаглинь ['3 ']. "</ TD> ';
эхо '<td>. $ Лаглинь ['4 ']. "</ TD> ';

эхо '</ TR>';

)

эхо "</ стол> ';


Вы также можете использовать специальные функции для фильтрации поисковых систем и роботов. Или создайте графами с использованием PHP / SWF диаграммы. Возможности безграничны, и вы можете сделать все виды вещей!

В заключение ...
В этой статье я показал вам нужно создать модуль для регистрации вашего собственного сайта PHP, используя ничего, кроме PHP и встроенных функций. Чтобы просмотреть файл журнала, нужно разобрать его с помощью PHP, а затем отобразить его в какой бы путь вы любите. Это зависит только от вас создать Kick-Ass анализа траффика.

Если вы все еще предпочитают использовать встроенные анализа траффика, посмотрите на


18 Февраля 2010, 12:02
Отзывы
Написать комментарий
capcha
Написать