一般来说,在实际开发中,对于 Session 对象使用最多的就是用户登录部分了,这个案例将简单模拟一个用户登录表单、用户是否登录的判断以及用户退出的一系列功能,它一共分了以下几个页面。

Login.asp 用户登录部分

我们将要完成用户登录表单的显示,以及提交后,对于用户输入密码的判断和写 Session 的操作,主要代码如下:

<%
Dim sPassword
'判断是否POST提交单表,开始登录
If UCase(Request.ServerVariables("REQUEST_METHOD")) = "POST" Then
'提交表单登录,判断密码
sPassword = Trim(Request.Form("password"))
If sPassword = "123456" Then
Session("password") = "123456"
Response.Write("<h3>您已经登录成功!请访问<a href=""Check.asp"">登录检查文件</a></h3>")
Else
Response.Write("<h3>您输入的密码有误!</h3>")
'Response.End()
End If
Else
'显示表单,让用户登录
%>
<form method="post" action="">
请输入密码:<input name="password" type="text"/>
<input type="submit" value="提交"/>
</form>
<%
End If
%>

运行效果如下:

ASP入门(十一)-Session小案例-LMLPHP

登录成功,显示如下:

ASP入门(十一)-Session小案例-LMLPHP

Check.asp 登录判断部分

用来检查用户 Session,从而判断是否已经登录,主要代码如下:

<%
Dim sPassword
sPassword = Trim(Session("password"))
if sPassword = "" Then
Response.Write("<h3>您还没有登录呢,请访问<a href=""Login.asp"">登录表单</a></h3>")
Else
Response.Write("<h3>您已经登录了,可以访问<a href=""Logout.asp"">退出页面</a></h3>")
End If
%>

如果成功登录显示:

ASP入门(十一)-Session小案例-LMLPHP

如果没有登录显示:

ASP入门(十一)-Session小案例-LMLPHP

Logout.asp 用户退出部分

通过 Session 的 Remove 方法来清空 Cookies,从而实现用户的退出。主要代码如下:

<%
Session.Contents.Remove("password")
Response.Write("<h3>成功退出,可以访问<a href=""Login.asp"">登录页面</a></h3>")
%>

运行后显示:

ASP入门(十一)-Session小案例-LMLPHP

示例代码下载

SessionLogin.rar

05-11 09:33
查看更多