允许&在CodeIgniter URI中

时间:2014-03-12 15:26:24

标签: php codeigniter uri

我试图在我的Codeigniter网址中允许&。目前我收到Disallowed Key Characters.错误。

我尝试扩展Input.php文件以允许&函数中的_clean_input_keys() - 但它似乎已经太晚了,因为只有amp;进入提供字符串。

有谁知道我怎么能允许这个?通过这样做,我可能会暴露我的应用程序是否存在任何安全漏洞?

1 个答案:

答案 0 :(得分:1)

虽然我对这个答案并不是特别满意,并且欢迎采用更好的方法,但我必须紧急开展工作,所以我想出了这个黑客。

我延长了Input.php以及它在$_GET参数之前循环的地方,就在它调用之前:$_GET[$this->_clean_input_keys($key)] = $this->_clean_input_data($val);我添加了这个:

if (strpos($key, 'amp;') !== false) {
    $key = str_replace('amp;', '', $key);
}
此时

&已从密钥中删除,因此我只是在尝试清除数据之前删除amp;