小编给大家分享一下解决javascript在php中文乱码的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

javascript在php中文乱码的解决方法:1、在PHP文件中显示声明为GB2312,并对于发送到服务器的中文进行转码;2、代码是都采用【UTF-8】编码即可。

javascript在php中文乱码的解决方法:

解决方法之一,就是在PHP文件中显示声明为GB2312

header("Content-Type:text/html;charset=GB2312");

而对于发送到服务器的中文进行转码。

如下

$_POST["content"]=iconv("UTF-8","gb2312",$_POST["content"]);

因而这样可以解决乱码问题

相关学习推荐:javascript视频教程

解决方法之二,是都采用UTF-8编码。

附测试例程

客户端

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>ajax post test</title></head><body><div id="msg"></div><script language="javascript">/*** 初始化一个xmlhttp对象*/function InitAjax(){ var ajax=false; try {  ajax = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {  try {   ajax = new ActiveXObject("Microsoft.XMLHTTP");  } catch (E) {   ajax = false;  } } if (!ajax && typeof XMLHttpRequest!='undefined') {  ajax = new XMLHttpRequest(); } return ajax;}//在form 测试页面内有一个表单,一个显示的层function sendData(){var msg=document.getElementById("msg");var f=document.form1;var c=f.content.value;//接收数据的URLvar url="dispmsg.php";var poststr="content="+c;var ajax=InitAjax();ajax.open("POST",url,true);ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");ajax.send(poststr);ajax.onreadystatechange=function(){ if(ajax.readyState==4 && ajax.status==200){ alert("I got something"); msg.innerHTML=ajax.resp****eText; }}}</script><form name='form1'><input type="text" name='content' size=10><input type="button" value="确定" οnclick="sendData()"><!--我用submit时就出错--></form></body></html>

服务器端

<?phpheader("Content-Type:text/html;charset=GB2312");if($_POST['content']){$_POST["content"]=iconv("UTF-8","gb2312",$_POST["content"]);print("内容是".$_POST['content']);}else{print("没有内容发送");}?>

以上是解决javascript在php中文乱码的问题的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!