-
解决CI框架的Disallowed Key Characters错误提示
添加时间:2013-7-4 点击量:用CI框架时,有时辰会碰到这么一个题目,打开网页,只显示 Disallowed Key Characters 错误提示。有人说 url 里有不法字符。然则断定 url 是纯英文的,题目还是出来了。但清空浏览器汗青记录和cookies后。 刷新就没题目了。有时辰。打开不合的浏览器。有的浏览器会有题目。有的就不会。
解决 CodeIgniter 框架应用中,呈现Disallowed Key Characters错误提示的办法。找到/system/core文件夹下的Input文件,将下面的代码:
function _clean_input_keys(¥str)
{
if ( ! preg_match(/^[a-z0-9:_\/-]+¥/i, ¥str))
{
exit(Disallowed Key Characters.);
}
// Clean UTF-8 if supported
if (UTF8_ENABLED === TRUE)
{
¥str = ¥this->uni->clean_string(¥str);
}
return ¥str;
}改为:
function _clean_input_keys(¥str)
{
¥config = &get_config(config);
if ( ! preg_match(/^[.¥config[permitted_uri_chars].]+¥/i, rawurlencode(¥str)))
{
exit(Disallowed Key Characters.);
}
// Clean UTF-8 if supported
if (UTF8_ENABLED === TRUE)
{
¥str = ¥this->uni->clean_string(¥str);
}
return ¥str;
}参考:http://www.nowamagic.net/librarys/veda/detail/1699
容易发怒的意思就是: 别人做了蠢事, 然后我们代替他们, 表现出笨蛋的样子。—— 蔡康永