设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
解决ajax+php中文乱码的方法详解
返回列表
查看:
109
|
回复:
0
解决ajax+php中文乱码的方法详解
[复制链接]
xgnic
当前离线
积分
11142
3444
主题
3465
帖子
1万
积分
管理员
积分
11142
发消息
电梯直达
楼主
发表于 2018-2-14 08:20:44
|
只看该作者
|
正序浏览
|
阅读模式
中文如果用表单提交的话,不会出现乱码,而用ajax提交就会出现乱码,这是什么原因呢?
我的理解是,我在写源码的时候,一般用记事本写,保存的时候默认用ANSI编码,源码中也没有用“”或“header('Content-Type:text/html;charset=UTF-8');”指定网页编码,于是在浏览器中显示时它的编码被认定为“GB2312”。当前台向后台传递数据的时候,用表单提交的话,前后台之间用“GB2312”编码交流,不会出现乱码;而用ajax提交的话,ajax在前台把要发送的数据编码从“GB2312”转换 成“UTF-8”后再传给后台,然后再把接收到的后台返回的数据当成是 “UTF-8”而把它转换 成“GB2312”后显示在前台页面上,这样乱码就产生了。
如图:
所以要解决乱码,要在后台进行数据编码转换,后台接收到的数据用PHP的mb_convert_encoding("要转换的数据","gb2312","UTF-8")进行转换后存储到数据库。而后台返回到前台的中文数据也要用mb_convert_encoding("要返回的数据","UTF-8","gb2312")转换后返回。
您可能感兴趣的文章:
jsp中 ajax的get请求的中文乱码问题的解决方法
jquery.ajax的url中传递中文乱码问题的解决方法
ajax请求乱码的解决方法(中文乱码)
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
ajax获取数据中文乱码问题最简单的完美解决方案
JQuery ajax 返回json时出现中文乱码该如何解决
关于Ajax请求中传输中文乱码问题的解决方案
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
浏览过的版块
长春建站
用户反馈
客户端