php,ajax,mysql,latin1編碼有關問題
來源:互聯網
上載者:User
php,ajax,mysql,latin1編碼問題
mysql預設latin1編碼,用ajax讀資料時讀到亂碼,在server端的ajax.php裡,有這兩個地方涉及到了編碼:
a.header( 'Content-type: text/xml;charset=utf-8 ');
b.查詢時,加上了mysql_query( "set names 'UTF8 ' ");
另外,ajax.php本身也是utf-8編碼的。
能夠查詢出記錄,但是查看XML原始碼,卻是這樣的內容:
²èµê×ÓÕý½ÖÅɳöËù
嘗試了很多種編碼轉換,都失敗了,請各位達人幫幫我啦!!!!!
------解決方案--------------------
xml 也加上utf8編碼試試
------解決方案--------------------
mysql預設latin1編碼 改utf-8
用戶端html用utf-8
傳到的時候不管是蝦米樣的,只要在用戶端能夠正常顯示就OK的啦
------解決方案--------------------
多位元組字元不要用LATIN1。建議用UTF8或者GBK
------解決方案--------------------
最好統一編碼格式~~
------解決方案--------------------
用iconv()統一編碼不行嗎;
------解決方案--------------------
b.查詢時,加上了mysql_query( "set names 'UTF8 ' ");
應該是mysql_query( "set names 'UTF-8 ' ");吧.
ajax.php輸出XML用iconv()轉下碼.
$xml = "即將輸出的xml資料 ";
echo iconv( "latin1 ", "utf-8 ",$xml);