CodeIgniter框架提示Disallowed Key Characters的解决办法

打开ci框架的源码不难发现,在ci的核心input类中有这样一个函数:复制代码 代码如下:function _clean_金沙官网线上,input_keys { 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; } return $str;}这是进行过滤的,所以抛出错误

用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示。有人说 url 里有非法字符。但是确定 url 是纯英文的,问题还是出来了。但清空浏览器历史记录和cookies后。 刷新就没问题了。有时候。打开不同的浏览器。有的浏览器会有问题。有的就不会。解决 CodeIgniter 框架应用中,出现Disallowed Key Characters错误提示的方法。找到/system/core文件夹下的Input文件,将下面的代码:复制代码 代码如下:function _clean_input_keys{ 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; } return $str;}改为:复制代码 代码如下:function _clean_input_keys { $config = &get_config; if ( ! preg_match("/^[".$config['permitted_uri_chars']."]+$/i", rawurlencode { exit('Disallowed Key Characters.'); } // Clean UTF-8 if supported if (UTF8_ENABLED === TRUE) { $str = $this->uni->clean_string; } return $str; }

本文由金沙官网线上发布于编程,转载请注明出处:CodeIgniter框架提示Disallowed Key Characters的解决办法

您可能还会对下面的文章感兴趣: