Do not Access Superglobal $_POST Array Directly.
Use some filtering functions instead (e.g. filter_input(), conditions with is_*() functions, etc.).
----
(Alt-Enter shows hints)
当我向我的 PHP 文件发送 AJAX 请求时,我在 NetBeans IDE 中收到这种警告。
我的请求类型是POST
,当我转到PHP页面时,我收到警告。
此警告是否会以任何方式损害我的代码。我该如何摆脱它?我应该忽略它还是摆脱警告非常重要?
当我获取从 AJAX 传递的数据时,$_POST
中出现警告。
例:
$fname = ($_POST['Fname']);
$_POST
线具有黄色下划线。
您发布的警告文本为您提供了示例 - 通过 filter_input()
或 is_*()
等函数传递您的$_POST
参数。
尝试类似这样的操作:
$fname = filter_input(INPUT_POST, 'Fname', FILTER_SANITIZE_SPECIAL_CHARS);
参考资料 - http://php.net/manual/en/function.filter-input.php
编辑:可用筛选器的列表链接在函数页面上。你不必用FILTER_SANITIZE_SPECIAL_CHARS
,我只是举了一个例子。
关键是 Netbeans 告诉您验证/清理 POST 数据。您可以为此编写自己的函数。检查值的类型、长度等是否正确。