我从latin-1 MySQL数据库中获取了一堆丹麦文本,并在PHP中回显时正确显示。当我需要回显一些其他丹麦字符时,问题就开始了,这些字符不是从数据库中获取的。
我所做的实际上是输出标题
Content-Type: text/html; charset=iso-8859-1
也可以让未查询的字符正确显示。
问题是,当我这样做时,查询的字符显示不正确。
答案 0 :(得分:3)
仅仅因为数据存储在latin-1整理表中并不意味着它是latin-1编码的。这是因为当连接SET NAMES
设置与排序规则相同时,MySQL不会进行任何字符转换。
我怀疑你在latin1数据库中存储了一些UTF8字符,这使问题混乱。
如需更多帮助,请添加以下内容的详细信息:
答案 1 :(得分:0)
使用unicode。 UTF-8 =>正确的方式。
因此,在数据库中设置utf8_unicode_ci,在页面字符集中设置UTF-8,在查询设置mysql_query之前设置(“SET NAMES UTF8”);