首页 > 后端开发 > php教程 > PHP中ajax的数据乱码问题

PHP中ajax的数据乱码问题

WBOY
发布: 2016-06-23 13:30:47
原创
837 人浏览过

今天试了下简单的ajax测试
然后出现了乱码

<?phpheader("Content-Type: text/html; charset=utf-8");class C_test2 extends CI_Controller{    public function __construct()    {        parent::__construct();    }    public function test(){        $data=$_POST['id'];               echo 'id的值为'.$data;    }}?>
登录后复制

<!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title><script src="js/jquery.js" type="text/javascript"></script><script src="js/test.js"></script><link href="css/test.css" rel="stylesheet" type="text/css"></head><body><input type="text" id="wenben"></input><input type="submit" id="tijiao"></input></body></html>
登录后复制

$(function(){	$("#tijiao").click(function(){		var turl="http://localhost/ajaxCI/C_test2/test";		var tval=$("#wenben").val();				$.ajax({			type:"POST",			url:turl,			data:{id:tval},			dataType:"html",			async:false,			success:function(back){				alert(back);			}					});	})})
登录后复制




然后我把PHP那个header头的编码改为GBK时是这样的



我擦,这是二选一的节奏么,为何不统一。。。


回复讨论(解决方案)

虽然你在 php 文件中声明了 utf-8
但是你的程序文件却是 gbk 的

那应该怎么解决?

两边得同步,要gbk都是gbk,要utf8都是utf8……

把程序文件保存为 无BOM头的utf-8 格式

或者
echo iconv('gbk', 'utf-8', 'id的值为') . $data;

把文件编码改为UTF-8就搞定了

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板