【发布时间】:2011-09-11 06:17:40
【问题描述】:
我的 PHP 页面中有一个表单。用户填写他的凭据和消息,然后按发送。我通过电子邮件收到他的问题,可以回答他。
但是我也想把人的公网IP加到邮箱里,可以吗?
非常感谢!
【问题讨论】:
-
你为什么要这样做?
标签: php
我的 PHP 页面中有一个表单。用户填写他的凭据和消息,然后按发送。我通过电子邮件收到他的问题,可以回答他。
但是我也想把人的公网IP加到邮箱里,可以吗?
非常感谢!
【问题讨论】:
标签: php
您可以使用$_SERVER['REMOTE_ADDR'],但如果您真的想确保获得正确的 IP 而不是代理 IP,那么我发现此功能很有帮助
注意:我不是此代码的所有者,我是在互联网上的某个地方找到的
function get_real_ip()
{
if (isset($_SERVER["HTTP_CLIENT_IP"]))
{
return $_SERVER["HTTP_CLIENT_IP"];
}
elseif (isset($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
return $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif (isset($_SERVER["HTTP_X_FORWARDED"]))
{
return $_SERVER["HTTP_X_FORWARDED"];
}
elseif (isset($_SERVER["HTTP_FORWARDED_FOR"]))
{
return $_SERVER["HTTP_FORWARDED_FOR"];
}
elseif (isset($_SERVER["HTTP_FORWARDED"]))
{
return $_SERVER["HTTP_FORWARDED"];
}
else
{
return $_SERVER["REMOTE_ADDR"];
}
}
【讨论】:
$_SERVER["HTTP_*"] 变量都被简单地欺骗了。
$_SERVER["REMOTE_ADDR"] 和我能找到的任何其他类型的 var 转发。
您可以使用$_SERVER["REMOTE_ADDR"]。但不一定可靠。
【讨论】:
您可以使用以下代码:
$ip = $REMOTE_ADDR;
【讨论】:
register_globals
尝试使用$_SERVER['REMOTE_ADDR'] 获取用户的IP 地址。
【讨论】: