日期:2014-05-17  浏览次数:20717 次

codeigniter input post中文不能提交
通过$this->input->post('name')提交不了中文
如果name='en'则能提交
如果name='中文'则不能提交

------解决方案--------------------
可能是你的接收的php页面和发送数据的HTML页面编码不一致造成的。
var_dump($_POST); 看看乱没乱码
------解决方案--------------------
探讨

引用:

可能是你的接收的php页面和发送数据的HTML页面编码不一致造成的。
var_dump($_POST); 看看乱没乱码

var_dump($_POST) name=> 没有数据

------解决方案--------------------
的确是你说的问题,CI只支持英文的表单name属性。不然会报Disallowed Key Characters.
解决方法就是换成英文的,或者: http://www.kukaka.org/home/content/576
Input.php中的方法
PHP code
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;
        }