『壹』 解決ASP網站gb2312和utf-8亂碼問題
一般我們做ASP網站,都會用到conn.asp來連接資料庫,這個文件一般都包含在每個頁面的最頂部,所以我們只要把這個代碼加在conn.asp的頂部,全站就都解決了,當然如果在conn.asp之上還包含了其他文件,或者conn.asp沒有放在最頂部,改起來就相對麻煩一點。
做網站的時候,客戶要一個博客,於是就利用了本博客所用的程序pjblog。經常做網站的人都知道,在同一個站點里使用不同編碼的頁面會產生亂碼,比較常見的就是gb2312和Utf-8,比如我剛做的網站主站用的gb2312,博客用了utf-8,這樣在訪問時就出現亂碼,以前給百貨大樓的網站加一個調查問卷系統,就遇到了這個問題,當時搗鼓了很久才搞定。沒想到今天又遇到這個,很欣慰,於是寫篇日誌記錄一下這個方法。其實解決這個問題也很簡單。只要在頁面的最頂部加上以下代碼就可以了。(www.3lian.com)
gb2312的頁面加
<%@LANGUAGE="VBSCRIPT"
CODEPAGE="936"%>
<%Session.CodePage=936%>
utf-8的頁面加
<%@LANGUAGE="VBSCRIPT"
CODEPAGE="65001"%>
<%Session.CodePage=65001%>
其中936和65001分別代表的是gb2312和utf-8,還有一些我們不常用的,比如
950
繁體中文
437
美國/加拿大英語
932
日文
949
韓文
866
俄文
『貳』 ASP出現亂碼的問題怎麼解決
asp提示框亂碼是頁面編碼和文件的編碼不一致或者未設置編碼導致的。
1、如果程序專文件代碼是utf8,也就是文件包屬含charset=utf-8,文件保存時編碼應該保存為utf-8格式,文件保存如下圖。
2、如果程序代碼是gb2312,文件保存的時候編碼選擇ANSI。
3、如果頁面未設置編碼,需要設置一下編碼,頁面中寫
<meta http-equiv="content-type" content="text/html;charset=gb2312" />或
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
『叄』 我的asp頁面中的文字顯示正常,但是從資料庫中讀出來的數據全成了亂碼
在你頁面的來最上面寫上<%response.charset="utf-8"
session.codepage=65001
%>
要看你的頁源面是什麼是編碼。如果是utf-8的就寫上面那個是。如果是gb2312的。就寫上<%response.charset="gb2312"
session.codepage=936
%>
『肆』 關於ASP程序讀取MYSQL資料庫中文顯示亂碼的問題
<%@
CODEPAGE=65001
%>
<%
Response.CodePage=65001%>
<%
Response.Charset="GBK"
%>
用寫字板把
.asp
文件另存為
GBK字元集
------------------------------------------------------------
或者查詢之前先執行下面這一句
set
chs=conn.Execute("SET
NAMES
'gb2312'")
'查詢數據內庫表
sql
=
"SELECT
*
FROM
tb_commondata"
Set
rs
=
conn.Execute(sql)
這樣就不會亂容碼了