mysql dbase中的奇怪字符

时间:2009-08-02 14:28:03

标签: php mysql character-encoding

当我输入像é或ë这样的奇怪字符并将其存储在mysql dbase中时;该角色将转换为:é

它可能需要对我的角色集做些什么。但我现在不知道从哪里开始。 在我插入的页面顶部:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

dbase中字段的搭配是:utf8_unicode_ci

在网页中显示字段会产生é和ë但在textarea中显示它们会导致é

我该如何改变?

3 个答案:

答案 0 :(得分:2)

你可以做两件事:

答案 1 :(得分:2)

确保列,表和数据库的排序规则都设置为utf8_unicode_ciutf8_general_ci

除了您已经拥有的meta指令之外,您还必须牢记以相同的编码从数据库中提取和插入条目。

在您调用连接数据库后立即包含此行:

mysql_query("set names 'utf8'");

这样可以在操作和提取数据库中的条目时将字符集正确保存为UTF-8状态。

如果您下次可以have everything in UTF-8 from the very start

答案 2 :(得分:1)

mysql_query字符串效果很好! :)

为了避免aby编码问题,只需设置:

  • meta http-equiv =“Content-Type”content =“text / html; charset = UTF-8”
  • utf-8-general-ci在您使用的任何mysql表的所有字符/文本字段
  • mysql_query(“set names'utf8'”);在数据库连接调用之后