注册 登录
编程论坛 ASP技术论坛

新手请教关于ASP读取数据库中文乱码的问题

oninohitomi 发布于 2011-03-02 18:48, 920 次点击
程序代码:
<%@LANGUAGE="VBScript" codepage="936"%>


<!--#include file="conn.asp"-->

<%

logname
=Request.QueryString("u_name")
logpwd
=Request.QueryString("u_pwd")


set rs=server.createobject("adodb.recordset")
sql
="select * from UserTable where u_name='"+logname+"' and u_pwd='"+logpwd+"'"
rs.open sql,conn,
1,1

if (not rs.eof) then
logSuccess
=u_name
else
logSuccess
=u_content
end if

response.Write(
"logSuccess="&logSuccess)

rs.close
set rs=nothing

%>
我用上面的来读取数据库,能读取,但是为何response.Write("logSuccess="&logSuccess)
输出中文会是乱码呢?
存入数据库的中文显示正常啊?
读取数字等都没问题.
为什么呢,我看网上说的,都是加codepage="936"  但是我有加啊.

4 回复
#2
gupiao1752011-03-02 23:05
<%@LANGUAGE="VBScript" codepage="936"%>
改为如下:试试!
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<% Response.Charset = "utf-8" %>

如果你的页面里还有HTML标签,有如下类似的代码,需要显示汉字的情况的话,还需要改红色代码部分:一般情况没有必要,如果有这种的结构就一定要改。两种都测试看看!
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

#3
gupiao1752011-03-02 23:09
如果还没有解决你的乱码问题,在ASP页顶部再加入如下4行代码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset = "utf-8" %>
<%Session.CodePage=65001%>
<%Response.CodePage=65001%>
#4
tandezhong2011-03-03 10:40
回复 楼主 oninohitomi
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

这样试试..

#5
yms1232011-03-03 12:22
什么数据库Access还是SQL Server
1