ASP中的SESSION问题. 如果好用,再加分!

来源:百度知道 编辑:UC知道 时间:2024/06/30 02:18:32
加我QQ. 68852454

本人急.

问题非常古怪。是这样的。

我在Global.asa中设置了Session.TimeOut = 30(Session_OnStart)

读取这个属性的时候也显示的30

If Session("IsLogin") = "" Then
Response.Write("您未登陆或者超时")
Response.End()
End If

不知道为什么,如果一会不动的话,就提示“您未登陆或者超时”。
<!--#include file="Conn.asp"-->
<!--#include file="../Inc/Md5.asp"-->
<%
Session.TimeOut=120
Dim Ay_AdminName,Ay_AdminPwd,Ay_CheckCode,Rs,Sql
Ay_CheckCode = Request.Form("CheckCode")
If Ay_CheckCode <> Trim(Session("GetCode")) Then
Response.Write("<script language='JavaScript'>alert('附加码错误!请重新输入!');history.go(-1);</script>")
Response.End()
End If
Ay_AdminName = Request.Form("UserName")
Ay_AdminPwd = Request.Form("password")
Set Rs = Server.CreateObject(

一般来讲,先判断验证码----用户名及密码是否为空---验证用户名和密码与数据库数据对比---然后

Set Rs=Conn.Execute("Select id,Name,Pass From [user] where [Name]='"&NameGet&"' and [Pass]='"&PassGet&"'")
If Not(Rs.Bof And Rs.Eof) Then '若找到数据则运行下面
Session.Timeout=30 'SEESION有效时间为30分钟
'将用户资料记录到各自的Session变量中
Session("ID")=Cstr(Rs("id"))
Session("Name")=Rs("Name")
Session("Pass")=Rs("Pass")
Else
Rs.Close
Set Rs=Nothing
Response.Write"<script language='javascript'>alert('您输入的用户名或者密码错误!');history.back();</script>"
Response.End
End If
Rs.Close
Set Rs=Nothing

不需要将Session("IsLogin") = "Yes"

===============================================
你的程序逻辑蛮混乱的
Session.TimeOut=120 因该在验证码和用户名及密码都通过后再设置,而不是一开始就设置
另外
If Rs(&quo