1. 程式人生 > >asp access utf 中文 亂碼怎麼辦

asp access utf 中文 亂碼怎麼辦

asp 中文亂碼,asp access 亂碼,asp 重新整理後亂碼,asp utf 8亂碼,ajax 亂碼 asp,asp 漢字亂碼,asp亂碼怎麼辦

用utf-8編碼用在新的網站上,不想問題還真多,所以找了些文章,帖子,看了看,等下有用的就貼下面了。

今天,我開始把 CODEPAGE="936" 改成 CODEPAGE="65001"

把charset=gb2312改成 charset=utf-8

可是還是亂碼,只要是指令碼用的地方還是亂碼,現在終於找到問題了,就是當指令碼輸出時候,要以utf-8編碼輸出。

就是要加一句<% Response.Charset = "utf-8" %>

①首先當然是頁面本身用utf-8編碼,在DW新建頁時預設編碼定為“Unicode(UTF-8)”

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001" %>

' ②CODEPAGE="65001" 告訴伺服器頁面使用UTF-8編碼的

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

' ③charset=utf-8告訴瀏覽器頁面使用UTF-8編碼的

</head>

<body>

<% Response.Charset = "utf-8" %>

' ④伺服器輸出編碼為utf-8

</body>

</html>

重新整理後又變成亂碼,或者瀏覽其他的gb2312的頁面回來又亂碼了。值得又去google了一下,呵呵,還是找到答案了

看看下面的文字,就知道了,所有在後來我加了這個,程式頂端

<%Session.CodePage=65001%>

<%@ codepage=936%>簡體中文

<%@ codepage=950%>繁體中文

<%@ codepage=65001%>UTF-8

codepage指定了IIS按什麼編碼讀取傳遞過來的串串(表單提交,位址列傳遞等)。

出亂碼的原因也就是網站要整合的時候模組編碼不一樣引起的。

不要轉換任何模組網頁的編碼該utf-8的還是utf-8,該Gb22312的還是Gb2312

將GB2312模組的conn.asp檔案中加入了以下這段程式碼

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%Session.CodePage=936%>

一切OK!

同樣在在Utf-8模組的包檔案(如conn.asp,但是要注意conn.asp必須是在第一行呼叫)最前面加上

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%Session.CodePage=65001%>

這幾天寫東西時總是遇到亂碼,鬱悶,以前從來沒研究過編碼,只是拿過語句直接用!下午經過研究後我得出以下結論!

首先,選擇編碼:你必須按照你頁面的內容選擇編碼,不過建議前臺後臺都使用utf-8編碼,方法是在conn.asp中加入:

引用

<%@ CODEPAGE=65001 %>

<% Response.CodePage=65001%>

<% Response.Charset="UTF-8" %>

就可以解決亂碼隱患,或者在每個頁面一開始加入:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" />

如果有小的頁面,直接ASP服務端宣告<%Response.Charset="utf-8"%>,這樣基本可以解決亂碼問題!

其次,如果某個頁面不用utf-8編碼,直接加上:<%Response.Charset="GB2312"%>

還有個問題,就是某個頁面是utf-8編碼,而另外一個頁面是GB2312編碼,如何實現跳轉而沒有亂碼。方法是:

給GB2312頁面設定:Session.CodePage=936;或者直接用response.redirect實現跳轉.

另外,基本常識:

<%@ codepage=936%>簡體中文

<%@ codepage=950%>繁體中文

<%@ codepage=65001%>UTF-8