2015-10-15 56 views
0

这是我的理解是,PHP将urldecode $_GET$_REQUEST所以我没有在我自己的

但似乎CI是rawurldecoding $ _ POST($这个 - >输入 - > post()),因为全局XSS过滤。我很好,但我需要的数据是urldecoded而不是RAWurldecoded。这意味着我需要用空格替换+('')

  1. 我可以做一个简单的str_replace而不会引起问题吗?
  2. 我理解PHP为$ _GET和$ _REQUEST做些什么? (根据它说的手册)?

回答

1

如果希望,可以通过传递参数来禁用XSS筛选。

$this->input->post('post_name', FALSE); // returns specified POST item without XSS filter 
$this->input->post(NULL, FALSE); // returns all POST items without XSS filter 
+0

感谢您的提示!因为我需要以url解码方式存储数据,所以我最终做了'urldecode($ this-> controller-> input-> post('ResponseOrigin',FALSE));'我得到了一个来自URL编码的远程服务器的响应我发回自己编码,然后我需要存储解码。我认为你的解决方案最好,因为我处理原始数据。一世 –