日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

PHP ajax 传递中文乱码,ajax+php传递中文乱码解决办法

發布時間:2024/7/5 php 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP ajax 传递中文乱码,ajax+php传递中文乱码解决办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

AJAX的亂碼的出現在的原因

由于XMLHTTP采用的是Unicode編碼上傳數據,而一般頁面采用的是gb2312,這就造成顯示頁面時產生亂碼。而當在獲取頁面時的XMLHttp返回的是utf-8編碼,這就造成了顯示產生亂碼。

解決方法之一就是在PHP文件中顯示聲明為GB2312

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

而對于發送到服務器的中文進行轉碼。

如下

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

因而這樣可以解決亂碼問題

方法二,是都采用UTF-8編碼。這里就不多說了

附測試例程

客戶端

ajax post test

/**

* 初始化一個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.responseText;

}

}

}

服務器端

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

if($_POST['content'])

{

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

print("內容是".$_POST['content']);

}

else

{

print("沒有內容發送");

}

?>

引用自:http://www.blogjava.net/huyi2006/articles/86154.html

總結

以上是生活随笔為你收集整理的PHP ajax 传递中文乱码,ajax+php传递中文乱码解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。