La façon la plus simple d'obtenir le nom du visiteur/client Adresse IP utilise le $_SERVER['REMOTE_ADDR']
o $_SERVER['REMOTE_HOST']
variables.
Cependant, il arrive que cela ne renvoie pas l'adresse IP correcte du visiteur, nous pouvons donc utiliser d'autres variables du serveur pour obtenir l'adresse IP.
Les deux fonctions ci-dessous sont équivalentes, la différence résidant uniquement dans la manière et l'endroit où les valeurs sont récupérées.
getenv() est utilisé pour obtenir la valeur d'une variable d'environnement en PHP.
// Function to get the client IP address
function get_client_ip() {
$ipaddress = '';
if (getenv('HTTP_CLIENT_IP'))
$ipaddress = getenv('HTTP_CLIENT_IP');
else if(getenv('HTTP_X_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_X_FORWARDED_FOR');
else if(getenv('HTTP_X_FORWARDED'))
$ipaddress = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ipaddress = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ipaddress = getenv('REMOTE_ADDR');
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
$_SERVER est un tableau qui contient des variables de serveur créées par le serveur web.
// Function to get the client IP address
function get_client_ip() {
$ipaddress = '';
if (isset($_SERVER['HTTP_CLIENT_IP']))
$ipaddress = $_SERVER['HTTP_CLIENT_IP'];
else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_X_FORWARDED']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED'];
else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_FORWARDED']))
$ipaddress = $_SERVER['HTTP_FORWARDED'];
else if(isset($_SERVER['REMOTE_ADDR']))
$ipaddress = $_SERVER['REMOTE_ADDR'];
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
5 votes
stackoverflow.com/questions/1634782/
2 votes
Si vous êtes sur un serveur local, ce sera différent (par exemple : 192.168.xxx.xxx), car vous vérifiez auprès de whatsmyip que vous obtenez l'ip de votre isp qu'ils vous ont fourni.
0 votes
Sur votre ordinateur vous verrez votre IP privée (192...) et sur les sites web vous verrez votre IP publique (84...). En général, votre IP publique est la seule intéressante.
12 votes
Là encore, il ne s'agit pas vraiment d'un doublon, étant donné que c'est le mieux classé par Google. Les gars de Stackoverflow, allez. "Marqué comme Duplicate" arrive trop souvent. Si celui-ci est mieux classé, c'est pour une bonne raison. Google a parlé.