UTF8双重编码错误

时间:2014-06-07 07:09:53

标签: php mysql utf-8 character-encoding

我将数据作为utf8_unicode

存储在数据库中

我在连接时使用

mysql_query("SET NAMES 'utf8'");

虽然我的数据显示不正确并且显示有特殊字符的钻石。问题是如果我删除

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

从我的标题中,mysql检索到的数据开始正常显示,尽管现在所有其他静态网站文本都已损坏。

有谁知道发生了什么事?我以为它可能是由两个utf-8编码mysql数据引起的。

3 个答案:

答案 0 :(得分:0)

数据库中的值最初是否以utf-8编码,如果没有,请尝试重新插入。

答案 1 :(得分:0)

关键设置是character_set_connection - 确保它也设置为utf8。另请查看设置值

character_set_client
character_set_connection
character_set_database
character_set_results
character_set_server

以及所涉及表格的字符设置。

答案 2 :(得分:0)

以某种方式在它们上运行utf8_encode()修复了这个问题,所以我想它们在插入数据库时​​实际上并没有被编码。

相关问题