MotherHacker
22.12.2017, 02:02
PHP:
public functionGetUserIp(){
if($this->UserIP=="Undefined"){
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND !empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$client_ip= ( !empty($_SERVER['REMOTE_ADDR']) ) ?$_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ?$_ENV['REMOTE_ADDR'] :"unknown");
$entries=split('[, ]',$_SERVER['HTTP_X_FORWARDED_FOR']);
reset($entries);
while (list(,$ent ry) =each($entries))
{
$entry=trim($entry);
if (preg_ match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/",$entry,$ip_list) )
{
$private_ip= array(
'/^0\./',
'/^127\.0\.0\.1/',
'/^192\.168\..*/',
'/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/',
'/^10\..*/');
$found_ip=preg_replace($private_ip,$client_ip,$ip_ list[1]);
if ($client_ip!=$found_ip)
{
$client_ip=$found_ip;
break;
}
}
}
$this->UserIP=$client_ip;
return$client_ip;
}else return ( !empty($ _SERVER['REMOTE_ADDR']) ) ?$_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ?$_ENV['REMOTE_ADDR'] :"unknown");
}else return$this->UserIP;
}
public functionGetUserIp(){
if($this->UserIP=="Undefined"){
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND !empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$client_ip= ( !empty($_SERVER['REMOTE_ADDR']) ) ?$_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ?$_ENV['REMOTE_ADDR'] :"unknown");
$entries=split('[, ]',$_SERVER['HTTP_X_FORWARDED_FOR']);
reset($entries);
while (list(,$ent ry) =each($entries))
{
$entry=trim($entry);
if (preg_ match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/",$entry,$ip_list) )
{
$private_ip= array(
'/^0\./',
'/^127\.0\.0\.1/',
'/^192\.168\..*/',
'/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/',
'/^10\..*/');
$found_ip=preg_replace($private_ip,$client_ip,$ip_ list[1]);
if ($client_ip!=$found_ip)
{
$client_ip=$found_ip;
break;
}
}
}
$this->UserIP=$client_ip;
return$client_ip;
}else return ( !empty($ _SERVER['REMOTE_ADDR']) ) ?$_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ?$_ENV['REMOTE_ADDR'] :"unknown");
}else return$this->UserIP;
}