2023-05-21 分類: 網站建設
成都網絡公司在做一個客戶咨詢留言的頁面,要發送到客戶郵箱,但今天在測試時發現,通過
<form action="…" method="post" id="form1" target="_blank" name="form1">
…
</form>
這種方法提交表單, 然后在我的站點下獲取表單后,獲取的數據都是亂碼,感覺很奇怪?
分析提交表單到郵箱數據亂碼的原因是什么呢?
成都網站建設在后臺獲取數據頁面里進行了utf-8轉成gb2312的轉換,但是結果仍然是亂碼。
我想到了抓包工具.分析了下.發現了
Accept-Encoding 這么一個代碼..
于是BAIDU了下, .
原來郵箱對post的數據進行了Gzip壓縮.
貌似.NET里面有對Gzip解壓的類。
仔細回想下,我這種提交時方式相當于在不同的編碼方式下提交表單(因為Accept-Encoding 也是種編碼方式)
在vs2008里的<form>標簽下敲了下回車 發現了一個屬性.accept-charset
這個屬性可以實現在不同的編碼頁面下提交表單.
<form action="result.aspx" accept-charset="utf-8" method="post" id="form1" target="_blank" name="form1">
…
</form>
在IE下還是會有亂碼,上面這種寫法是W3C標準的寫法,在符合W3C標準的瀏覽器下不會出現亂碼
IE下這樣寫
<form action="result.aspx" accept-charset="utf-8" onsubmit="document.charset = 'utf-8';" method="post" id="form1" target="_blank" name="form1">
…
</form>
再次測試發送郵件,測試成功!
新聞名稱:分析提交表單到郵箱數據亂碼的原因
文章轉載:http://m.newbst.com/news19/260319.html
成都網站建設公司_創新互聯,為您提供營銷型網站建設、外貿建站、網站排名、關鍵詞優化、做網站、網站收錄
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容