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

2015-01-24信息快讯网

本篇文章是对ajax+php中文乱码的方法进行了详细的分析介绍,需要的朋友参考下

中文如果用表单提交的话,不会出现乱码,而用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实例
php实现文件下载(支持中文文名)
根据中文裁减字符串函数的php代码
PHP 正则判断中文UTF-8或GBK的思路及具体实现
php ckeditor上传图片文件名乱码解决方法
多个PHP中文字符串截取函数
php file_get_contents抓取Gzip网页乱码的三种解决方法
php上传文件中文文件名乱码的解决方法
PHP页面中文乱码分析
ajax返回值中有回车换行、空格的解决方法分享
php中生成随机密码的自定义函数代码
php中如何判断一个网页请求是ajax请求还是普通请求
Ajax+PHP快速上手及简单应用说明
解析CI的AJAX分页 另类实现方法
基于PHP+Ajax实现表单验证的详解
深入php处理整数函数的详解
PHP写的加密函数,支持私人密钥(详细介绍)
PHP版 汉字转码的实现详解
解析dedeCMS验证码的实现代码
PHP自定义大小验证码的方法详解
探讨PHP JSON中文乱码的解决方法详解
PHP转换文件夹下所有文件编码的实现代码
基于python发送邮件的乱码问题的解决办法
ajax完美实现两个网页 分页功能的实例代码
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
ajax取消挂起请求的处理方法
PHP人民币金额数字转中文大写的函数代码
PHP-redis中文文档介绍
PHP5.4中json_encode中文转码的变化小结
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
ajax php传递和接收变量实现思路及代码
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
php+ajax做仿百度搜索下拉自动提示框(有实例)
©2014-2024 dbsqp.com