作者Qiqi (潑潑)
看板PHP
標題[請益] 亂碼
時間Thu Aug 15 12:16:41 2013
原本在windows架wamp時,沒有亂碼問題
後來移到linux架lamp時,寫入時有問題
檔案是utf8編碼
html給<meta charset="utf-8">
sql用pdo給exec('SET CHARACTER SET utf8');
程序如下:
1. html
2. message = prompt()
3. $.ajax(
{
url: './ajax.php',
type: 'post',
dataType: 'json',
data: { content: message }
});
4. ajax.php 寫入 sql
自己debug目前得到的怪資訊是:
A. console.log(message); // 正常
B. var_dump($_POST['content']);exit; // 亂碼
/* 因為是ajax所以用exit中斷後在chrome看 */
C. $_SESSION['test'] = $_POST['content'];
在html中插入<?php var_dump($_SESSION); ?> // 正常
D. 最後寫入sql時是問號?而不是亂碼
# 嘗試過在ajax.php中用iconv,但轉不出來
# B. 跟 C. 都是同一個值,但dump出來的結果不一樣,
猜測傳值時都是以utf8在傳,只是C.有browser幫忙轉碼,所以看得見
# code都一樣,只是換server就出問題,所以問題是server的設定?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 116.59.229.90
※ 編輯: Qiqi 來自: 116.59.229.90 (08/15 12:18)
推 LPH66:我猜一切都沒問題 只是顯示時的編碼沒設定好 08/15 15:00
→ LPH66:(也就是如你倒數第二行的猜測) 08/15 15:01
推 see7di:htmL另存为utf-8 09/11 22:39