javascript在php中文乱码怎么办
4130
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"]);
因而这样可以解决乱码问题
解决方法之二,是都采用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;
- //接收数据的URL
- var 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>
服务器端
- <?php
- header("Content-Type:text/html;charset=GB2312");
- if($_POST['content']){
- $_POST["content"]=iconv("UTF-8","gb2312",$_POST["content"]);
- print("内容是".$_POST['content']);
- } else {
- print("没有内容发送");
- }
- ?>
本文网址:https://www.zztuku.com/index.php/detail-7911.html
站长图库 - javascript在php中文乱码怎么办
申明:如有侵犯,请 联系我们 删除。
您还没有登录,请 登录 后发表评论!
提示:请勿发布广告垃圾评论,否则封号处理!!