我正在 codeigniter 中开发我的应用
我得到了像ī, ū, ā ,š
等我的角色。当我将它们插入数据库时,我会utf8_encode('$this->input->post('mypostdata')')
。当我在页面上回显它时我做utf8_decode($enterie->row('myrow'))
,一切都显示得很好。但是当我打开数据库时,所有这些字符都显示为Ä«或Å¡等。我将我的数据库整理设置为 utf8_general_ci 。 Codeigniter db配置文件
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
我已经与SHOW CREATE DATABASE
DB_NAME检查了数据库字符集,我得到了/ *!40100 DEFAULT CHARACTER SET utf8
* /
我搜索了一些信息,发现了一些关于my.cnf文件的内容,但是我的页面和数据库都是在ipage.com上托管的。
那么我应该检查哪些选项?
答案 0 :(得分:0)
我已经遇到过这个问题。使用iconv()
函数只需要一行代码:
试试这个:
$post_data1= $this->input->post('mypostdata'); //data with ī, ū, ā ,š
$post_data= iconv('UTF-8', 'ASCII//TRANSLIT', $post_data1); //now it will become i, u, a etc.
现在将$post_data
发送到数据库。
它会起作用。