njkzkj 发表于 2008-8-11 22:06:41

scaffloding 添加中文字段出错,求教

使用的数据库是Mysql
mysql> show variables like "character_set_%";
+--------------------------+---------------------------------------------------+

| Variable_name            | Value                                             |

+--------------------------+---------------------------------------------------+

| character_set_client   | latin1                                          |

| character_set_connection | latin1                                          |

| character_set_database   | latin1                                          |

| character_set_results    | latin1                                          |

| character_set_server   | utf8                                              |

| character_set_system   | utf8                                              |

-----------------------------------------------------------------------------


database.php 的设置为
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "open_lab";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";

添加中文后显示为???,在Windows console下也是???

kissmumu 发表于 2008-8-12 07:37:40

你在CI里设置数据库的编码是“utf8”

$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";

但你的数据库实际上是 latin1

当然乱码,都统一成utf8,另外,你的php文件编码也要改成utf8去bom保存。

njkzkj 发表于 2008-8-12 12:21:27

可以了,楼上正确

Hex 发表于 2008-8-12 13:35:56

呵呵,热心解答问题的朋友都加分~~~
页: [1]
查看完整版本: scaffloding 添加中文字段出错,求教