我有以下問題: 我有一個窗體,通過GET特殊字符接收。它讀取它們,然後用這些字符填充字段。 我的<meta http-equiv="content-type" content="text/html;charset=utf-8" />
插在<head>
的正下方。 所有的東西在FF中都很完美,但是在IE中這些字符已經搞亂了,而我卻得到了所有這些符號。 然而,在IE瀏覽器中,如果我右鍵單擊頁面,並在編碼下將UTF-8更改爲西歐(Windows),則這些字符將正確顯示。 我也嘗試在我的Apache conf文件中添加AddDefaultCharset Off
,以確保Web服務器不覆蓋字符集編碼。 奇怪的是,如果在我的代碼中,我使用PHP的htmlentities
,那麼文本在IE中正確顯示,但在FF中錯誤。UTF 8編碼工作在FF但在IE中不工作
除此之外,我用firebug和開發者工具來看看GET數據是如何傳遞的,看起來在FF中特殊字符被轉換爲:B6%C3%A4%C3%BC%C3%9F%C3%96%C3%84%C3%9C%20IT%20%C3%A0%C3%A8%C3%AC%C3%B2%C3%B9%20
,但在IT中GET數據顯示爲àéèâêîôûœïç
。
任何人都可以幫助我嗎?它開始變得非常令人沮喪,不能在FF和IE中找到方法。
也許我只是愚蠢的,但例如,在螢火蟲我不怎麼或在哪裏可以看到我的服務器發送的字符集頭。我看到的是:Content-Type \t text/html,Transfer-Encoding \t chunked,Accept-Encoding gzip,deflate,Accept-Language \t zh-cn,en; q = 0.5。我在Windows Server 2008上使用Apache 2.2。 – 2012-03-01 10:46:22
@Mihai奇怪,看起來沒問題。你可以顯示一個實時鏈接嗎? – 2012-03-01 10:49:26
http://emeasmartportal.com/sbso/index-test.php?fname=FRàéèêêôôôôôôôéDEöäßßeÜITàèìòùESñáéíóú&lname = FRàéèâôôôôôôôéDEöäüßÖÄÜITàèìòùESñáéíóú&cid = 1-1Q9-2406&coid = 1-10EXOC&partname = FRàéèâêêîôûœœçDE如果你打開這個鏈接,fname參數將在FF中正確顯示,但是在IE中是錯誤的(我沒有對它進行任何編碼/解碼)。 lname會在IE中正確顯示,但在FF中錯誤(我正在做GET數據的性能) – 2012-03-01 11:08:35