字符集编码问题

时间:2011-09-29 11:26:02

标签: php mysql character-encoding special-characters

全部,我有字符编码的老问题......

我有一个mySQL数据库,其字段设置为utf8_unicode_ci。我的PHP页面作为标题条目<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />。当我使用简单的表单将带有西里尔字符的数据发布到数据库时,例如'гыдлпоо',字符在textarea中正确显示,并添加到正确显示的数据库中。

从数据库中提取字符时,我的页面只显示一系列问号。我使用了mb_detect_encoding($content, "UTF-8,ISO-8859-1", true);,内容是UTF-8,但字符不显示。

我一直在搜索(包括SO)并尝试了任何数量的解决方案,但没有用 - 任何帮助都会非常感激。

非常感谢

3 个答案:

答案 0 :(得分:3)

在mysql_connect()和mysql_select_db()之后立即执行此操作:

mysql_query("SET NAMES 'utf8'");

答案 1 :(得分:2)

您是否尝试使用

表单
enctype="multipart/form-data"

? 这可能会有所帮助..文本在数据库中没有必要可读...当它们被保存时,它们应该是utf8编码的...当你再次输出字符串时你需要它们看起来很好

答案 2 :(得分:2)

在从数据库获取数据之前尝试使用mysql_set_charset()函数。