试图弄清楚为什么在使用CodeIgniter 2.1.0的php表单中,有值被发布到控制器,但没有正确转换。我可以从表单post中复制utf8个字符,并插入到我的数据库表中,这没有问题。
我对商标标签和注册标签之类的东西有问题。这些标签(包括html实体和html数字)轰炸了表单处理的后端,但中文(简体HK)工作没有问题,并且可以正确转换。
单据类型的表头有utf8。我得到了一颗带问号的漂亮钻石。我篡改了一些代码(htmlentities,html_entity_decode),可以让商标暴露出来,也可以让注册商标暴露出来。(汉字和带口音的英语也不错)。为了做一个简单的str_replace,我甚至无法匹配反面的字符。
有什么建议吗?
您需要在表单标签中包含此参数
accept-charset="utf-8"
您也可以从表单帮助程序中使用form_open()
,它将为您处理此问题。