ホームページ >バックエンド開発 >PHPチュートリアル >PHPにおけるAjaxデータの文字化け問題
今日は簡単な Ajax テストをしてみました
そして、コードが文字化けしました
<?phpheader("Content-Type: text/html; charset=utf-8");class C_test2 extends CI_Controller{ public function __construct() { parent::__construct(); } public function test(){ $data=$_POST['id']; echo 'id的值为'.$data; }}?>
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Insert title here</title><script src="js/jquery.js" type="text/javascript"></script><script src="js/test.js"></script><link href="css/test.css" rel="stylesheet" type="text/css"></head><body><input type="text" id="wenben"></input><input type="submit" id="tijiao"></input></body></html>
$(function(){ $("#tijiao").click(function(){ var turl="http://localhost/ajaxCI/C_test2/test"; var tval=$("#wenben").val(); $.ajax({ type:"POST", url:turl, data:{id:tval}, dataType:"html", async:false, success:function(back){ alert(back); } }); })})
phpファイルでutf-8を宣言しました
が、プログラムファイルはgbkです
どのように解決すればよいでしょうか?
gbk が gbk の場合、utf8 が utf8 の場合は、両側を同期する必要があります...
BOM ヘッダーのない utf-8 形式でプログラム ファイルを保存します
または
echo iconv('gbk', 'utf-8' 、「id 」の値)
ファイルのエンコードを UTF-8 に変更するだけで完了です