首页 >后端开发 >php教程 >为什么会出现少量乱码?

为什么会出现少量乱码?

WBOY
WBOY原创
2016-06-23 14:19:441099浏览

本帖最后由 u011263669 于 2013-08-20 19:33:32 编辑

我们公司的网站是个zencart电商网站
网站所有文件格式都是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/

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn