I have a problem when checkingout in my webshop. Website sends a "internal" ip ( 10.0.18.5) from isp and my payment gateway dont accept it.
My isp tells me to change this:
$_SERVER['REMOTE_ADDRESS'] ===> $_SERVER['HTTP_X_REAL_IP']
(not working)
My payment gateway tell me to change:
return $tmp_ip; ====> return $_SERVER["HTTP_X_FORWARDED_FOR"];
My Code:
PHP-kod:
/**
* Returns the clients IP address.
*
* @return string
*/
public function getClientIP() {
//Proxy handling.
$tmp_ip = $_SERVER['REMOTE_ADDR'];
$x_fwd = isset($_SERVER["HTTP_X_FORWARDED_FOR"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : null;
if(self::$x_forwarded_for && $x_fwd !== null) {
//Cut out the first IP address
if(($cpos = strpos($x_fwd, ',')) !== false) {
$tmp_ip = substr($x_fwd, 0, $cpos);
$x_fwd = substr($x_fwd, $cpos+2);
}
else { //Only one IP address
$tmp_ip = $x_fwd;
$x_fwd = null;
}
}
$this->x_fwd = $x_fwd;
return $tmp_ip;
}
HELP!!!!!!!!!!