日期:2014-05-17  浏览次数:20495 次

为什么会出现少量乱码?
本帖最后由 u011263669 于 2013-08-20 19:33:32 编辑
我们公司的网站是个zencart电商网站
网站所有文件格式都是utf-8 无bom编码格式
网站录入数据时都先运行 sql:"set names utf8"
数据库中所有数据表都是 utf8 格式

但某些外国用户在我们网站上注册或者编辑信息,录入数据库时会出现乱码,这种情况出现率5%左右。为什么会出现乱码?怎么解决?

------解决方案--------------------
他浏览的时候的浏览器的网页编码可能不是utf8的,或者是翻译后浏览。可以用javascript得到客户端的编码
------解决方案--------------------
两个解决方案:
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/