radmin de daha önce vermişti, forumda mevcut;
<?php
function kullaniciinfo () {
$proxy="";
$IP = "";
if (isSet($_SERVER)) {
if (isSet($_SERVER["HTTP_X_FORWARDED_FOR"])) {
$IP = $_SERVER["HTTP_X_FORWARDED_FOR"];
$proxy = $_SERVER["REMOTE_ADDR"];
} elseif (isSet($_SERVER["HTTP_CLIENT_IP"])) {
$IP = $_SERVER["HTTP_CLIENT_IP"];
} else {
$IP = $_SERVER["REMOTE_ADDR"];
}
} else {
if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ) {
$IP = getenv( 'HTTP_X_FORWARDED_FOR' );
$proxy = getenv( 'REMOTE_ADDR' );
} elseif ( getenv( 'HTTP_CLIENT_IP' ) ) {
$IP = getenv( 'HTTP_CLIENT_IP' );
} else {
$IP = getenv( 'REMOTE_ADDR' );
}
}
if (strstr($IP, ',')) {
$ips = explode(',', $IP);
$IP = $ips[0];
}
$RemoteInfo['ip']=$IP;
$RemoteInfo['hostadi']=@GetHostByAddr($IP);
$RemoteInfo['proxy']=$proxy;
return $RemoteInfo;
}
//Örnek kullanım
#kullanıcının fonksiyondan gelecek bilgileri bir değişkene atayalım
$user=kullaniciinfo ();
#kullanıcının ip adresini ekrana yazdıralım
echo $user['ip'];
#kullanıcının host adını ekrana yazdıralım
echo $user['hostadi'];
#varsa kullanıcının proxy si için
echo $user['proxy'];
//Örnek kullanım bitti
?>