當參數值為英文是可以正確寫入數據庫,但為中文是就不行,如何解決這個中文亂碼的問題呢?
下面一步步教你如果解決PHP與AJax開發過程中,提交中文參數亂碼的問題。
出現的原因是因為參數傳遞的格式問題.
因為英文在參數傳遞轉換兩邊格式一樣所以沒問題.
而中文狀態下的解析會出現構造組合問題.出現類似繁體的亂瑪.
可以這樣解決:
在JS中把要傳遞的參數先經過 encodeURIComponent(var);這個函數轉換.
再接收的PHP中用 $var=iconv("UTF-8","GB2312",$_GET['var']);把接受的變量轉換成中文.
最後在PHP傳遞出參數的時候 用函數 $var=iconv("GB2312","UTF-8","Your message");轉換一次.問題就解決了.