es importante que $_SERVER['REMOTE_ADDR'] se pueda ejecutar, no que esté dentro de una condición, puedes utilizarla sola
Código PHP:
$ip = $_SERVER['REMOTE_ADDR']
pero si quieres precisión prueba esta
Código PHP:
if (getenv('HTTP_CLIENT_IP')) {
$IP = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$IP = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$IP = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$IP = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$IP = getenv('HTTP_FORWARDED');
}
else {
$IP = $_SERVER['REMOTE_ADDR'];
}
Espero te sirva
A mi siempre me sivio la primera opción simple....