有關PHP中的Ajax亂碼問題

2022-09-20 03:33:12 字數 1124 閱讀 6895

ajax的亂碼的主要原因:

由於xmlhttp採用的是unicode編碼

而一般頁面採用的是gb2312

而當在獲取頁面時的xmlhttp返回的是utf-8編碼

這就造成了顯示產生亂碼。

基本的解決辦法有以下幾種:

方法一:

在php檔案中顯示宣告為gb2312

header("content-type:text/html;charset=gb2312");

而對於傳送到伺服器的中文進行轉碼。

$_post["content"]=iconv("utf-8","gb2312",$_post["content"]);

方法二:

在php的處理頁面上

header("content-type:text/html;charset=gb2312");

方法三:

對**和資料庫進行統一的編碼,這樣一般就不會出現類似的問題。

特殊情況:

以上出現原因,各個帖子中都有體現,不過樓主曾經出現在測試過以上的問題以後,還會出現的亂碼情況,經過一番測試,發現url中回傳多值的時候依然可能會出現亂碼。。

解決方案:

將中文值使用特殊字元連線後,一次性傳入,並控制器端再分割,雖然比較麻煩,但是效果很好。ps:ajax回傳多值的時候,不使用xml依然可以使用這種方案。

這樣簡單的處理下就可以了。

ajax亂碼問題

1 建議html jsp檔案本身採用utf 8格式 2 html的head中增加 3 jsp檔案頭增加 page contenttype text html charset utf 8 pageencoding utf 8 4 其中第2 3點也可通過filter實現 public void dofi...

php中的亂碼問題

亂碼不外呼就三種情況 1 是由編碼引起的亂碼,解決方法 修改編碼就是了 2 是由解碼引起的亂碼 比如原來別人用的是gbk,而你的客戶端軟體用的是解碼軟體是gb2312的。那麼可能就會引起亂碼了 3 是由作業系統引起的。這個好解決,修改一下電腦的區域設定那裡就可以了 最近在弄php,見同事遇幾次亂碼問...

解決jQuery中Ajax的亂碼問題

document ready function data error function r,r1,r2 post表單中的資料一直都正常,只是url中出現中文的話,伺服器程式收到的會是亂碼,比如 a.php?a 中文,這時候如果伺服器程式使用gb2312則正常,使用utf 8則亂碼,解決方法,所有頁面...