是否比
更简单foreach($_POST as $x=>$y){
$arr[$x] = $this->input->get_post($y, TRUE);
}
只需使用CI的XSS过滤器清除整个$ _POST数组。看看输入库,似乎get_post()只接受一个单独的变量,而不是能够清理整个数组,然后返回数组。
答案 0 :(得分:7)
不确定你是否想要全局,但如果你这样做......来自ze手册:
如果您希望过滤器每次遇到POST或COOKIE数据时自动运行,您可以通过打开application / config / config.php文件并设置它来启用它:
$config['global_xss_filtering'] = TRUE;
答案 1 :(得分:2)
$this->input->post(NULL, TRUE);
返回所有带有XSS过滤器的POST项目
$this->input->post();
返回没有XSS过滤器的所有POST项目
答案 2 :(得分:1)
在某种意义上,所选择的答案是正确的,但提供的信息并不是CI中XSS过滤这一实际问题的合适答案。
通过以下方式进行评论:
http://ponderwell.net/2010/08/codeigniter-xss-protection-is-good-but-not-enough-by-itself/
在所有输出上输入htmlspecialchars / htmlentities / urlencode或回家。 CI的XSS过滤器使用了一种过时且破碎的黑名单技术,该技术无法进行大量的XSS攻击。
编码并验证。总是