如何解决CI框架的Disallowed Key Characters错误提示

2015-01-24信息快讯网

本篇文章是对解决CodeIgniter框架应用中,出现Disallowed Key Characters错误提示的方法,进行了详细的分析介绍,需要的朋友可以参考下

用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;   
}
PHP中的Memcache详解
PHP中使用memcache存储session的三种配置方法
php环境套包 dedeampz 伪静态设置示例
php的memcache类分享(memcache队列)
codeigniter自带数据库类使用方法说明
php检测useragent版本示例
easyui的tabs update正确用法分享
PHP中nowdoc和heredoc使用需要注意的一点
PHP fopen()和 file_get_contents()应用与差异介绍
zf框架的zend_cache缓存使用方法(zend框架)
zf框架的Filter过滤器使用示例
使用PHP导出Redis数据到另一个Redis中的代码
PHP调用JAVA的WebService简单实例
CodeIgniter框架中_remap()使用方法2例
php function用法如何递归及return和echo区别
PHP中redis的用法深入解析
php将session放入memcached的设置方法
如何在Ubuntu下启动Apache的Rewrite功能
浅析十款PHP开发框架的对比
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Smarty foreach控制循环次数的实现详解
服务器变量 $_SERVER 的深入解析
IIS安装Apache伪静态插件的具体操作图文
浅析php插件 HTMLPurifier HTML解析器
file_get_contents("php://input", "r")实例介绍
深入解析php中的foreach问题
浅析Apache中RewriteCond规则参数的详细介绍
浅析php面向对象public private protected 访问修饰符
php selectradio和checkbox默认选择的实现方法详解
解析php session_set_save_handler 函数的用法(mysql)
浅析memcache启动以及telnet命令详解
关于使用key/value数据库redis和TTSERVER的心得体会
解析file_get_contents模仿浏览器头(user_agent)获取数据
Memcached常用命令以及使用说明详解
Function eregi is deprecated (解决方法)
php class中public,private,protected的区别以及实例分析
©2014-2024 dbsqp.com