在Netbeans 7.4 for PHP上“不要直接访问Superglobal $ _SERVER数组”

时间:2014-02-19 18:33:49

标签: php netbeans

是的,发布并正确回答了类似的问题。 Warning "Do not Access Superglobal $_POST Array Directly" on Netbeans 7.4 for PHP

这篇文章很有帮助。但它没有解决我的问题。

我的浏览器中没有任何输出。

我应用了所有与$ _SERVER交换$ _POST的选项。

我的原始代码:

$user_ip = $_SERVER[ 'REMOTE ADDR'];

我的代码修改了几种方式,因为其他问题/答案建议

user_ip = filter_input(INPUT_SERVER, 'REMOTE_ADDR');
user_ip = filter_input_array(INPUT_SERVER, 'REMOTE_ADDR');

仍然没有出场

背景

我正在通过这些教程在index.php中的代码后附加代码。

我一直在评论以前的代码。

我错过了一些评论,那时我实际上已经输出了

::1

我对输出的预期是

127,0,0,1

当我评论上一个教程中的所有代码时 我不再获得任何输出。

我要通过一个非常好的教程,但他正在使用xampp。 我在Mac上并安装了放大器。 不知道这是否重要。

如果您想看一下,请导航至 thenewboston.com 教程 腓 第33课 http://thenewboston.org/watch.php?cat=11&number=33 第一分钟左右。

2 个答案:

答案 0 :(得分:3)

当PHP基于FastCGI时, filter_input(INPUT_SERVER,... 和 filter_input_array(INPUT_SERVER ... 不要返回任何结果!

请参阅PHP manual entry on filter_input, paying particular attention to the comment by anthony dot parsons

答案 1 :(得分:0)

您可以直接使用constructor(private navCtrl: NavController, private users:Users,public _form: FormBuilder) { this.passwordForm = new FormGroup({ password: new FormGroup({ oldpassword: new FormControl('', [Validators.required,Validators.pattern('[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$')]), matchingPassword: new FormGroup({ newpassword: new FormControl('', [Validators.required,Validators.pattern('[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$')]), reenterpassword: new FormControl('', [Validators.required,Validators.pattern('[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$')]), },{validator: this.areEqual}) }) }); } areEqual(group: FormGroup) { var valid = false; for (name in group.controls) { if (val === undefined) { var val = group.controls[name].value } else { if (val !== group.controls[name].value) { valid = false; break; } } } if (valid) { return null; } return { areEqual: true }; } } ,无需使用$_SERVER。输出filter_input只是因为您在Localhost上运行此代码。如果您在服务器上尝试代码(检查您在RemoteHost上的代码),那么它将提供您的cLient的IP。这是我获取客户的I.P.的代码。 See Snapshot Here

::1