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

yipeiwu_com5年前PHP代码库
用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实现httpRequest的方法

本文实例讲述了php实现httpRequest的方法。分享给大家供大家参考。具体如下: 想从学校图书馆的网站上抓取数据处理之后在返回给浏览器,试了不少方法。首先试了http_reques...

php绘制一个矩形的方法

本文实例讲述了php绘制一个矩形的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php //1、创建画布 $im = imagecreatetru...

php5新改动之短标记启用方法

第一是按PHP的标准写法.<?php.....?> 第二是在配置文件中(php.ini)修改short_open_tag的值为on....

php中字符集转换iconv函数使用总结

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库。 用法如下: 复制代码 代码如下: $string = "欢迎访问【宜配屋www.yipeiwu.com】...

PHP操作数组的一些函数整理介绍

在数组中搜索一个特定值,如果找到返回TRUE否则返回FALSE boolean in_array(mixed needle,array haystack[,boolean strict]...