<?php
#-----------------------------------------------------#
# **** STATISTIC OF VISITS ***** #
# Made by : SHEVA #
# E-mail : [email protected] #
# Site : http://sheva.org.ru #
# ICQ : 350-097-917 #
# Вы не имеете право вносить изменения в код скрипта #
#-----------------------------------------------------#
$er_time=date("H:i:s d M Y"); // записываем текущее время в строку,
//используя заданный формат
$U=getenv("HTTP_USER_AGENT"); // получаем данные о софте,
//который испольует пользователь
$H=getenv("HTTP_REFERER"); // получаем URL, с которого пришёл посетитель
$R=getenv("REMOTE_ADDR"); // получаем IP посетителя
$W=getenv("REQUEST_URI"); // получаем относительный адрес странички,
//которую запросил посетитель
while (ereg('%([0-9A-F]{2})',$H)){ // пока в строке $H будет хоть одно
//сочетание знака % и двух символов из диапазонов 0-9 и A-F
//(шестнадцатиричные цифры)
$val=ereg_replace('.*%([0-9A-F]{2}).*','\1',$H);
// присваиваем $val результат замены выражения,
//содержащего процент и два символа из означенных выше интервалов,
//на эти самые два символа
// короче говоря, теперь в $val у нас очередные 2 символа,
//перед которыми в исходном выражении стоял процент
$newval=chr(hexdec($val)); // получаем сивол с номером,
//полученным переведением полученного в $val
//шестнадцатиричного числа в "нормальное"
$H=str_replace('%'.$val,$newval,$H);
//стандартная строковая функция замены -
//заменяет подстроку, состоящую из процента и друх символов
//из переменной $var на символ, который эти два
//шестнадцатиричных символа кодировали
}// конец цикла :)
$f=fopen("local/referer.dat",'a'); // дальше - понятно, пишем всё это в файл
flock ($f,2);
fwrite($f,"|$er_time| $U|$H|$R|$W|\n");
fclose($f);
?>