【发布时间】:2014-02-19 18:33:48
【问题描述】:
是的,一个类似的问题已发布并正确回答。 Warning "Do not Access Superglobal $_POST Array Directly" on Netbeans 7.4 for PHP
那篇文章很有帮助。但它并没有解决我的问题。
我的浏览器中没有任何输出。
我应用了将 $_POST 与 $_SERVER 交换的所有选项。
我的原始代码:
$user_ip = $_SERVER[ 'REMOTE ADDR'];
我的代码按照其他问题/答案的建议修改了几种方式
user_ip = filter_input(INPUT_SERVER, 'REMOTE_ADDR');
user_ip = filter_input_array(INPUT_SERVER, 'REMOTE_ADDR');
仍然没有出局
背景。
在阅读这些教程时,我在 index.php 中的代码之后添加代码。
我一直注释掉之前的代码。
我错过了一些 cmets,那时我实际上确实有输出
::1
我期望的输出是
127,0,0,1
当我注释了上一个教程中的所有代码时 我不再得到任何输出。
我将通过一个非常好的教程,但他正在使用 xampp。 我在 Mac 上并安装了放大器。 不知道这是否重要。
如果您想查看,请导航至 thenewboston.com 教程 php 第 33 课 http://thenewboston.org/watch.php?cat=11&number=33 第一分钟左右。
【问题讨论】:
-
REMOTE ADDR(带空格)!=REMOTE_ADDR(带下划线)...::1是 IPv6 环回地址,正如 127.0.0.1 是 IPv4 的环回地址。跨度> -
欢迎来到 Stack Overflow!请务必阅读在帖子编辑器中单击橙色问号时出现的有用格式指南。
-
@Marc b 对不起。我在 REMOTE_ADDR 中确实有一个下划线。
-
@marc b 诚然,不是编程新手,而是 php 新手。为什么我没有得到输出?我正在使用 localhost 学习这个。为什么我的代码中还要有 REMOTE_ADDR。
-
好吧,你的 PHP 代码坏了。您没有
$,因此您试图将过滤结果分配给未定义的变量...$user_ip = $_SERVER['REMOTE_ADDR']。没有必要过滤那个。这将是一个由 PHP 确定的 IP 地址。用户无法在其中注入恶意数据。