为什么会出现少量乱码?
程序员文章站
2022-06-04 23:20:29
...
本帖最后由 u011263669 于 2013-08-20 19:33:32 编辑 我们公司的网站是个zencart电商网站
网站所有文件格式都是utf-8 无bom编码格式
网站录入数据时都先运行 sql:"set names utf8"
数据库中所有数据表都是 utf8 格式
但某些外国用户在我们网站上注册或者编辑信息,录入数据库时会出现乱码,这种情况出现率5%左右。为什么会出现乱码?怎么解决?
网站所有文件格式都是utf-8 无bom编码格式
网站录入数据时都先运行 sql:"set names utf8"
数据库中所有数据表都是 utf8 格式
但某些外国用户在我们网站上注册或者编辑信息,录入数据库时会出现乱码,这种情况出现率5%左右。为什么会出现乱码?怎么解决?
回复讨论(解决方案)
他浏览的时候的浏览器的网页编码可能不是utf8的,或者是翻译后浏览。可以用javascript得到客户端的编码
utf8_general 也有及少量的未收录的字符,例如俄罗斯的少数民族。但是这个原因的可能性极小,远远到不了5%。
出现乱码就是编码问题。
你的数据都是post方式提交到数据库的把?
会不会跟我用ajax post提交有关?
http://www.persunmall.com
我们公司的网站,能否帮我检查一下是否ajax提交发生的问题?
注册时就是ajax提交生成账号
两个解决方案:
1.ajax提交的时候,用+encodeURIComponent方法编码。
2.php端可以检查提交的是否是utf8编码。
检查方法 http://www.bo56.com/%E4%BD%BF%E7%94%A8%E6%AD%A3%E5%88%99%E6%A3%80%E6%B5%8B%E6%98%AF%E5%90%A6%E4%B8%BAutf8%E7%BC%96%E7%A0%81/