ЗНАЙ ВРАГА В ЛИЦО! - статистика посещений по-простому

 

Спецвыпуск Xakep, номер #028, стр. 028-080-1

ДАО-КЭ-ДАО ФЭЙ-ЧАН-ДАО

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

КТО?

Что ты хочешь знать о пользователе? Все, вплоть до размера колготок и диаметра сосков! Но современные технологии нам такой великолепной возможности, к сожалению, не предоставляют. Все в будущем, а пока мы можем вытащить то, что хранится в переменных среды.

Чтобы узнать список всех переменных, которые поддерживает твой браузер, нужно заюзать таг:

<?php phpinfo()?>

Инфа о браузере и операционной системе и языке хранится в переменной HTTP_USER_AGENT; чтобы вывести ее содержимое, забивай таг:

<?php echo $HTTP_USER_AGENT; ?>

Запомни эту переменную, она не простая, а золотая, потому что по ней часто можно отличить поисковую машину от рядового пользователя. Поисковики часто пишут свое имя в эту переменную.

Полезно также знать, с какой странички пользователь к тебе пришел, то есть кто такой хороший дал ссылочку на твою заплесневелую пагу? Этот адрес выясняется легко:

<?php echo $HTTP_REFERER; ?>

Чтобы пользователи не наглели, полезно будет хранить их IP-шники. То есть можно будет вычислить адреса любителей порнушки. Конечно, IP-адрес у юзера может быть не постоянный, но все-таки это внесет какую-то стабильность. Это простейший способ определить, тот же пользователь заходит на страничку или другой?

Вывод осуществляем тагом:

<?php echo $REMOTE_ADDR; ?>

Не отходя от кассы, можно проверить порт, с которого пришел запрос:

<?php echo $REMOTE_PORT; ?>

Ну и еще полезно знать, какую страничку пользователь запросил:

<?php echo $REQUEST_URI; ?>

Вот вокруг этих переменных и крутится основной сыр-бор. Есть, конечно, много идей и наворотов, но основная полезная инфа здесь.

КОГДА?

Как только пользователь зайдет на нашу страничку, он сразу же активизирует таг:

<?php $kogda=date('H:i:s, d m Y'); ?>.

Функция date() запишет в переменную kogda часы, минуты, секунды, день, месяц и год. Подробную расшифровку смотри по ссылке: http://www.west.com.ua/doc/php/learn_php3/7.html

СОХРАНИТЬ!

Кто и когда, мы знаем, теперь осталось это сохранить в файле. Для этого надо заюзать функцию открытия файла и установки указателя fopen(), в скобках указывай путь к файлу. Процедура fwrite() - запишет в файл по указателю полученные данные, а процедура fclose() закроет файл.

ДВИЖОК: с каких страниц к тебе ходят

АДРЕС: http://www.evilwalrus.com/viewcode/605.php

Самый наипростецкий движок, ничего напутать невозможно. Просто сохраняет в текстовом файле адреса страниц, с которых пользователи пришли на твою пагу. Эти адреса он берет из переменной HTTP_REFERER.

ДВИЖОК: когда? кто? откуда? под чем?

АДРЕС: http://www.evilwalrus.com/viewcode/56.php

Ну а тут движок немного посложнее. Засасываются: дата, с помощью функции date(), айпишник юзера через переменную REMOTE_ADDR, откуда пришел через HTTP_REFERER и с чем пришел (браузер) HTTP_USER_AGENT. Причем все это записывается в формате HTML файла за счет того, что переменные вставлены в заготовку HTML-документа. В результате имеем статистику в HTML-файле, которую можно посмотреть через браузер.

Содержание  Вперед на стр. 028-080-2
Выпуски журнала "СПЕЦ Xakep"
Cпец Хакер #01Cпец Хакер #02Cпец Хакер #03Cпец Хакер #04Cпец Хакер #05Cпец Хакер #06Cпец Хакер #07Cпец Хакер #08Cпец Хакер #09Cпец Хакер #10Cпец Хакер #11Cпец Хакер #12Cпец Хакер #13Cпец Хакер #14Cпец Хакер #15Cпец Хакер #16Cпец Хакер #17Cпец Хакер #18Cпец Хакер #19Cпец Хакер #20Cпец Хакер #21Cпец Хакер #22Cпец Хакер #23Cпец Хакер #24Cпец Хакер #25Cпец Хакер #26Cпец Хакер #27Cпец Хакер #28Cпец Хакер #29Cпец Хакер #30Cпец Хакер #31Cпец Хакер #32Cпец Хакер #33Cпец Хакер #34Cпец Хакер #35Cпец Хакер #36Cпец Хакер #37Cпец Хакер #38Cпец Хакер #39Cпец Хакер #40Cпец Хакер #41Cпец Хакер #42Cпец Хакер #43Cпец Хакер #44Cпец Хакер #45Cпец Хакер #46Cпец Хакер #47Cпец Хакер #48Cпец Хакер #49Cпец Хакер #50Cпец Хакер #51Cпец Хакер #52Cпец Хакер #53Cпец Хакер #54Cпец Хакер #55Cпец Хакер #56Cпец Хакер #57Cпец Хакер #58Cпец Хакер #59Cпец Хакер #60Cпец Хакер #61Cпец Хакер #62Cпец Хакер #63Cпец Хакер #64Cпец Хакер #65Cпец Хакер #66Cпец Хакер #67Cпец Хакер #68Cпец Хакер #69Cпец Хакер #70Cпец Хакер #71Cпец Хакер #72Cпец Хакер #73Cпец Хакер #74Cпец Хакер #75