惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
I
InfoQ
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
Y
Y Combinator Blog
博客园_首页
Martin Fowler
Martin Fowler
宝玉的分享
宝玉的分享
A
About on SuperTechFans
Apple Machine Learning Research
Apple Machine Learning Research
Vercel News
Vercel News
T
The Blog of Author Tim Ferriss
C
Check Point Blog
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Engineering at Meta
Engineering at Meta
B
Blog
爱范儿
爱范儿
Stack Overflow Blog
Stack Overflow Blog
aimingoo的专栏
aimingoo的专栏
WordPress大学
WordPress大学
F
Fortinet All Blogs
月光博客
月光博客
GbyAI
GbyAI

博客园 - 明仔¥

TP6 实现上传文件 页面自适应纯CSS,使用rem单位 jQuery解决高度统一问题 dedecms Ajax异步获取文章列表 手机端页面自适应解决方案—rem布局 mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围 修改PHP 上传文件大小限制 WampServer下修改和重置MySQL密码 CSS文件添加 @charset "utf-8"; 可能会引起样式在IE6下失效 Windows Server 2003下MySQL 5.1.32安装图文 如何彻底卸载MySQL 最好用的mysql密码忘记的解决方法 ASP将ACCESS表中的数据记录导入到EXCEL文件中 - 明仔¥ - 博客园 clng与cint的区别及防溢出函数 - 明仔¥ - 博客园 几个比较好看的Button的CSS - 明仔¥ - 博客园 网站样式切换效果 - 明仔¥ - 博客园 asp生成excel报表 VB中如何将字符串转换成数值来运算? 关于js中window.location.href,location.href,parent.location.href,top.location.href的用法 - 明仔¥ - 博客园
utf-8编码用于asp 出现乱码的问题--从数据库调用的是乱码--gb...
明仔¥ · 2010-11-03 · via 博客园 - 明仔¥

今天在用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%>

第二种解决方法:

原因:如先打开GB2312页面,数据库按照GB2312读取数据库内容。而在此时您再打开UTF-8页面时,若页面没有设置编码,数据库会按照刚刚使用过的编码类型即GB2312读取数据库,这就造成了乱码。

解决方法:

在UTF8编码的页面顶部加上如下代码:

<%
response.codepage=65001
response.charset="UTF-8"
%>

在GB2312编码的页面顶部加上如下代码:

<%
response.codepage=936
response.charset="GB2312"
%>