По какому запросу пришли на сайт?

 

По какому запросу пришел посетитель?

Многие веб-мастера интересуются у PageRanker.Ru, как разместить у себя на сайте скрипт с информацией о том,

по какому запросу посетитель пришел на сайт?

Скрипт пишется на языке .php, а затем вставляется в указанное Вами место на сайте. Информация отображается в виде того запроса, с коротого посетитель пришел к Вам на сайт. Стоит отметить, что при прямых заходах узнать по какому запросу пришли на сайт не представляется возможным в связи с отсутствие каких-либо запросов. Этот нюанс необходимо обозначить. Лучше всего заменять пустые запросы словами "Пришли напрямую" или "Переход без запроса". Но на этом PageRanker.Ru останавливаться сейчас не будет.

Давайте рассмотрим, как построен сам скрипт проверки запроса, по которому посетитель пришел на сайт:

$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("logs/visits.log",'a'); // дальше — понятно, пишем всё это в файл
flock ($f,2);
fwrite($f,"$er_time\n Br: $U\n Rf: $H\n IP: $R\n Rq: $W\n");
fclose($f);

Теперь узнать по какому запросу пришел к Вам на сайт посетитель не составляет труда.

Ваш www.pageranker.ru

  • Hits: 10726