|
|
|
|
|
для: cheops
(24.05.2006 в 23:38)
| | спасибо огромное, разобрался ) | |
|
|
|
|
|
|
|
для: Dark_Wektor
(24.05.2006 в 19:56)
| | Используйте следующий вариант
<?php
$text = getenv('HTTP_X_FORWARDED_FOR');
if(!empty($text));
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(24.05.2006 в 14:53)
| | ну у вас в принципе есть стрипт которым это можно проверить )))))
а вот это :
if(!empty(getenv('HTTP_X_FORWARDED_FOR'))) ;
|
выдаёт
Parse error: parse error, expecting 'T_VARIABLE' or ''$'' in X:\usr\WWW\index.php on line... | |
|
|
|
|
|
|
|
для: Unkind™
(24.05.2006 в 13:55)
| | Кажется, да (могу врать). | |
|
|
|
|
|
|
|
для: cheops
(24.05.2006 в 12:25)
| | cheops, вот хотел спросить...А если юзер заходит с двух прокси, т.е. сначала к одному коннектится, а потом к след., то значит HTTP_X_FORWARDED_FOR в итоге будет равен значению IP первого прокси? | |
|
|
|
|
|
|
|
для: Dark_Wektor
(24.05.2006 в 00:01)
| | HTTP_X_FORWARDED_FOR - это не альтернатива REMOTE_ADDR - в HTTP_X_FORWARDED_FOR помещается IP-адрес посетителя, если он использует прозрачный прокси-сервер, так как в REMOTE_ADDR помещается IP-адрес прокси-сервера. | |
|
|
|
|
|
|
|
для: Unkind™
(23.05.2006 в 23:05)
| | спасиб, а кроме подавления возможной ошибки это что-нибудь меняет??
здесь меня больше интересует, то как можно определить от куда пользователь?
опять же в примере пользователей номера 7-10-15-17 и 18
у них вместо имени хоста отображается тот же IP ... в случае с прокси сервером это первый IP ( кстати это внутренний или внешний? )
и ещё, какую ещё информацию можно получить о местонахожденни посетителя ??
заранее спасибо! | |
|
|
|
|
|
|
|
для: Dark_Wektor
(23.05.2006 в 21:51)
| |
if(getenv('HTTP_X_FORWARDED_FOR')) $user_ip=getenv('HTTP_X_FORWARDED_FOR');
else $user_ip=getenv('REMOTE_ADDR');
|
тут лучше
if(!empty(getenv('HTTP_X_FORWARDED_FOR'))) $user_ip=getenv('HTTP_X_FORWARDED_FOR');
else $user_ip=getenv('REMOTE_ADDR');
|
| |
|
|
|
|
|
|
|
для: Dark_Wektor
(23.05.2006 в 20:53)
| | Хм, а вот по моему посетитель №12.... за-за прокси сервера...
если это так, то большое вам спасибо!
хотя здесь возникает ещё вопрос почему не определились имена хостов, посетители 7 и 10 ???
страница просмотра результатов: | |
|
|
|
|
|
|
|
<?
if(getenv('HTTP_X_FORWARDED_FOR')) $user_ip=getenv('HTTP_X_FORWARDED_FOR');
else $user_ip=getenv('REMOTE_ADDR');
if (strlen($user_ip)>15)
{
$ip_array=split(",",$user_ip);
$mess="";
foreach ($ip_array as $val)
{
if(gethostbyaddr($val)) $mess .= "[ ".gethostbyaddr($val)." ]";
}
}
else {$mess = gethostbyaddr($user_ip);}
$ref=@getenv('HTTP_REFERER');
$file="../tmp/test.txt";
$fl=fopen($file,"a+") or die("не удалось открыть файл");
fwrite($fl,$user_ip."|||".$mess."|||".$ref."\n");
fclose($fl);
?>
|
назначение кода, определить от куда пришёл пользователь и сохранить эту информацию в файл.
я немогу понять что происходит когда пользователь за проксями, подскажите пожалуйста, может я в чём то не прав, или приведите правильный пример...
сам скрипт здесь: | |
|
|
|
|