0

我遇到了通过 AJAX 发送错误编码的问题。

我的代码如下:

$(document).ready(function(){

        $.ajax({
            type: "POST",
            url: "server_save.php",
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            data: { data: <?php echo $data; ?> }

            }).done(function( msg ) {

            alert( "Data Saved: " + msg );
        });

    });

在我的服务器上,我包含了这个以确保我的编码是 UTF-8:

<?php header('Content-Type: text/html; charset=UTF-8'); ?>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

如果我通过 AJAX 函数中的警报回显数据,它看起来很好:

'1120513','【接案】iOS遊戲 APP 程式設計','台中市全部', '', '','1.需要請提案人開發iOS系統上的電玩遊戲 app
2.各類型的遊戲都有需求,像是捲軸式的,或是動作類,休閒類的都有需求
3.需熟悉iOS系統SDK
4.需熟悉 C++/Objective-C 
5.請有經驗者提供過去作品供發案方參考','02','20130611', '','1','依公司規定','1','18','-1','104外包網'

但是在我的 chrome 开发者工具中(当我将它保存到数据库中时),预览窗口 [network->post->preview] 显示:

1120513','ã€æŽ¥æ¡ˆã€‘iOSéŠæˆ² APP 程å¼è¨­è¨ˆ','å°ä¸­å¸‚全部', '', '','1.éœ
€è¦è«‹æ案人開發iOS系統上的電玩éŠæˆ² app2.å„é¡žåž‹çš„éŠæˆ²éƒ½æœ‰éœ€æ±‚,åƒæ˜¯æ²è»¸å¼çš„,或
是動作類,休閒類的都有需求3.需熟悉iOS系統SDK4.需熟悉 C++/Objective-C 5.請有經驗è
€…æä¾›éŽåŽ»ä½œå“供發案方åƒè€ƒ','02','20130611','1',''ä¾å…¬å¸è¦å®š','1','18','104外包網

有谁知道会发生什么?

4

1 回答 1

0

原来这是 PHP/MySQL 的编码错误。我做了以下修复它:

if( function_exists('mysql_set_charset') ){
    mysql_set_charset('utf8', $db_con);
}else{
    mysql_query("SET NAMES 'utf8'", $db_con);
}
于 2013-06-11T15:29:41.927 回答