解决ajax+php中文乱码的方法详解


Posted in PHP onJune 09, 2013

中文如果用表单提交的话,不会出现乱码,而用ajax提交就会出现乱码,这是什么原因呢?

我的理解是,我在写源码的时候,一般用记事本写,保存的时候默认用ANSI编码,源码中也没有用“<meta http-equiv=Content-Type content=text/html;charset=UTF-8>”或“header('Content-Type:text/html;charset=UTF-8');”指定网页编码,于是在浏览器中显示时它的编码被认定为“GB2312”。当前台向后台传递数据的时候,用表单提交的话,前后台之间用“GB2312”编码交流,不会出现乱码;而用ajax提交的话,ajax在前台把要发送的数据编码从“GB2312”转换 成“UTF-8”后再传给后台,然后再把接收到的后台返回的数据当成是 “UTF-8”而把它转换 成“GB2312”后显示在前台页面上,这样乱码就产生了。
如图:
解决ajax+php中文乱码的方法详解

所以要解决乱码,要在后台进行数据编码转换,后台接收到的数据用PHP的mb_convert_encoding("要转换的数据","gb2312","UTF-8")进行转换后存储到数据库。而后台返回到前台的中文数据也要用mb_convert_encoding("要返回的数据","UTF-8","gb2312")转换后返回。

PHP 相关文章推荐
php socket方式提交的post详解
Jul 19 PHP
php实现天干地支计算器示例
Mar 14 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
jQuery+Ajax+PHP“喜欢”评级功能实现代码
Oct 08 PHP
zend framework重定向方法小结
May 28 PHP
24条货真价实的PHP代码优化技巧
Jul 28 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
Jul 28 PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
Mar 24 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
PHP命名空间namespace及use的简单用法分析
Aug 03 PHP
PHP实现的微信公众号扫码模拟登录功能示例
May 30 PHP
PHP保存Base64图片base64_decode的问题整理
Nov 04 PHP
PHP写的加密函数,支持私人密钥(详细介绍)
Jun 09 #PHP
PHP版 汉字转码的实现详解
Jun 09 #PHP
php批量上传的实现代码
Jun 09 #PHP
PHP转换IP地址到真实地址的方法详解
Jun 09 #PHP
linux环境apache多端口配置虚拟主机的方法深入介绍
Jun 09 #PHP
探讨PHP删除文件夹的三种方法
Jun 09 #PHP
如何用php获取文件名后缀
Jun 09 #PHP
You might like
给初学PHP的5个入手程序
2006/11/23 PHP
整合了前面的PHP数据库连接类~~做成一个分页类!
2006/11/25 PHP
PHP 动态生成静态HTML页面示例代码
2014/01/15 PHP
一个不易被发现的PHP后门代码解析
2014/07/05 PHP
搭建基于Docker的PHP开发环境的详细教程
2015/07/01 PHP
PHP程序员的技术成长规划
2016/03/25 PHP
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
2011/01/06 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
ECMAScript6的新特性箭头函数(Arrow Function)详细介绍
2014/06/07 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
jQuery使用removeClass方法删除元素指定Class的方法
2015/03/26 Javascript
javascript实现状态栏中文字动态显示的方法
2015/10/20 Javascript
基于JavaScript实现Json数据根据某个字段进行排序
2015/11/24 Javascript
jquery解析XML及获取XML节点名称的实现代码
2016/05/18 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
2017/09/19 Javascript
最实用的JS数组函数整理
2017/12/05 Javascript
微信小程序实现点赞、取消点赞功能
2018/11/02 Javascript
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
使用C++扩展Python的功能详解
2018/01/12 Python
Python的Tkinter点击按钮触发事件的例子
2019/07/19 Python
python scrapy爬虫代码及填坑
2019/08/12 Python
Python 私有化操作实例分析
2019/11/21 Python
Pytorch之Variable的用法
2019/12/31 Python
python如何使用Redis构建分布式锁
2020/01/16 Python
Python实现一个简单的毕业生信息管理系统的示例代码
2020/06/08 Python
会计与审计毕业生自荐信范文
2013/12/30 职场文书
北体毕业生求职信
2014/02/28 职场文书
小学生作文评语
2014/04/18 职场文书
供货协议书范本
2014/04/22 职场文书
房屋出售授权委托书
2014/10/12 职场文书
异地恋情人节寄语
2015/02/28 职场文书
复兴之路展览观后感
2015/06/02 职场文书
高中家长意见怎么写
2015/06/03 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书
python基础之while循环语句的使用
2021/04/20 Python