Allowing & in CodeIgniter URI


Allowing & in CodeIgniter URI

我试图允许&在我的Codeigniter URL的。此刻我得到一个Disallowed Key Characters.错误。

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

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

虽然我对这个答案不是特别满意,并欢迎一个更好的方法,但我必须尽快使这个工作,所以我想出了这个hack。

我扩展了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;试图清理数据之前删除它。