管家婆软件免费企业版:帮我看看这个错误。asp错误

来源:百度文库 编辑:高考问答 时间:2024/04/27 17:45:15
这页是点击一个超链接后显示的主要内容。但是总显示resp.asp?cmd=msg_owner这页的内容。(这页能正常显示)怎么改呀?
<!--#include file="conn.asp"-->
<%
Dim user_name
user_name = session("user_name")

%>
<html>

<head>
</head>
<body>
<%
'获取传值
dim vid
vid=Request.QueryString("id")

IF isNumeric(vid) THEN
vid=CLng(vid)
ELSE
Response.Redirect "resp.asp"
END IF

%>

<div align="center">
<div align="right">
<table border="1" width="985" id="table1" height="488">
<tr>
<td width="168">
<!--#include file="left.asp"-->
</td>
<td width="801">
<div align="center">

<table width="700" height="51" border="0" cellspacing="0" cellpadding="0" class="rdbar" id="table7"><tr>
<td width="100%" height="100%">
 <a href="index.asp">[首页]</a>-<a href="msgbox.asp">[站内消息箱]</a>-<font class="ft1">查看消息</font>
</td>
</tr></table>

</div>

<table align="center" width="709" height="233" border="0" cellspacing="0" cellpadding="6" class="rdd" id="table8">
<tr>
<td valign="top" class="rdk2">

<%
'读取相应的消息
sqlstr="SELECT u.user_ID,u.user_name,u.user_sex,m.* FROM users AS u INNER JOIN mail AS m ON u.user_name=m.m_from WHERE m.m_ID="&vid
rs.open sqlstr,conn,1,3
If rs.eof AND rs.bof Then
Response.Redirect "resp.asp?cmd=msg_idmiss"
ElseIf rs("m_to")<>user_name Then
Response.Redirect "resp.asp?cmd=msg_owner"
End If

%>
<table align="center" width="100%" height="37" border="0" cellspacing="0" cellpadding="0" class="rdd" id="table9">
<tr>
<td width="50%" height="100%" class="rdr"><b>发送人:</b> <a href="viewinfo.asp?id=<% =rs("ID") %><% =rs("m_from") %></a></td>
<td width="50%" height="100%"><b>发送日期:</b><% =rs("m_date") %></td>
</tr>
</table>
<table align="center" width="100%" height="47" border="0" cellspacing="0" cellpadding="0" class="intbl" id="table10">
<tr>
<td width="100%" height="100%" class="rdd"><b>消息标题:</b><% =unhtml(rs("m_title")) %></td>
</tr>
</table>

<table align="center" width="100%" height="25" border="0" cellspacing="0" cellpadding="0" class="intbl" id="table11">
<tr>
<td width="100%" height="100%" valign="top" class="rde"><b>消息内容:</b>
<br><% =UBB_Code(rs("m_content")) %>
<p align="right">
<a href="msgwr.asp?id=<% =rs("user_ID") %>">[回消息]</a> 
<a href="msgdel.asp?id=<% =vid %>">[删除]</a>
</p>
</td>
</tr>
</table>
<%
'已读处理
if rs("m_haveread")=False then
rs("m_haveread")=True
rs.update
mnew=conn.Execute("SELECT COUNT(m_ID) FROM mail WHERE m_to='"&user_name&"' AND m_haveread=false",0,1)(0)
sqlstr="UPDATE user SET newmsg="&mnew&" WHERE user_ID="&user_ID
conn.Execute sqlstr
end if
rs.close
%>
</body>

</html>
在进这页面前已经登录了!

你看一下

上面
user_name = session("user_name")

读数据库的代码

sqlstr="SELECT u.user_ID,u.user_name,u.user_sex,m.* FROM users AS u INNER JOIN mail AS m ON u.user_name=m.m_from WHERE m.m_ID="&vid
rs.open sqlstr,conn,1,3

If rs.eof AND rs.bof Then
Response.Redirect "resp.asp?cmd=msg_idmiss"
ElseIf rs("m_to")<>user_name Then
Response.Redirect "resp.asp?cmd=msg_owner"
End If

说明在调用这个页面前,你必须在session("user_name") 中有个合法的值,也就是,在调用这个页面之前,你必须先登录,否则就只能显示resp.asp?cmd=msg_owner了。