1
gengyanda OP > 于是乎,“你好”被储存成了“你好”
应该是被储存成了“&# 20320; &# 22909”,中间的空格请无视掉。因为刚刚直接打上去这串内容被v2ex直接转换成汉字了…… |
2
explon 2013-06-29 23:28:49 +08:00 via iPad
表的 charset 设置错了吧
|
3
gengyanda OP @explon 我总觉得这是php写入时的问题,因为读取的时候能正常读取。会不会是php先把汉字转换成了明文的utf8码,然后储存的?搞不清也不知道怎么办
|
4
mopvhs 2013-06-30 09:02:04 +08:00 via Android
header("Content-type: text/html; charset=utf-8");
如果页面没有设置编码,也会出现这种情况。 |
5
sNullp 2013-06-30 09:09:23 +08:00
mysql表的charset(不是通讯的charset)没设置好,使用了最原始的字节方式直接存储。
|
6
gengyanda OP 找到问题所在了。我是用表单提交的汉字。然而我发现表单传到服务器的时候,提交上来的就已经不是汉字而是utf8码了。所以我在储存的时候自然就把码储存进去了。这不是mysql的问题,是表单提交时编码的问题。
|