【发布时间】:2013-08-10 22:06:25
【问题描述】:
我有表 Users(带有 UTF8 字符集和 utf8_general_ci 排序规则),其中有 lastName 列(与表相同的字符集和排序规则)。当我直接从 Navicat for MySQL 将我的名字 (Štěrba) 插入到这个表和列中时,它在 Navicat 中正确显示,但在浏览器中显示不好(输出文档是 UTF8 并且在 mysql_connect() 之后我也使用 @ 987654326@):
但是当我使用这个查询从 PHP 插入时:
INSERT INTO users (firstName, lastName) values ('Pavel', 'Štěrba');
它在浏览器中正确显示,但在 Navicat 中它是这样保存的:
显然,我不能直接从navicat 编辑它,因为我会破坏它...你知道吗,为什么会发生这种情况?我错过了某个地方的编码吗?还是 Navicat 的问题?感谢您的提示!
【问题讨论】:
-
貌似是navicat的问题,但我没用过
-
它在 phpMyAdmin 中的显示方式与在 Navicat 中相同。
-
Navicat 使用什么字符集(charset)?根据您的描述,听起来 Navicat 使用了不正确的字符集(可能是 ISO-8859-1)。
标签: php mysql utf-8 character-encoding navicat