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

Login.asp (用户登录)、Check.asp (用户是否已经登录判断)、Logout.asp (用户退出)

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
%>

运行效果如下:

登录成功,显示如下:

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
%>

如果成功登录显示:

如果没有登录显示:

Logout.asp 用户退出部分

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

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

运行后显示:

示例代码下载

SessionLogin.rar

ASP入门(十一)-Session小案例的更多相关文章

  1. Session小案例------完成用户登录

    Session小案例------完成用户登录     在项目开发中,用户登陆功能再平常只是啦,当用户完毕username和password校验后.进入主界面,须要在主界面中显示用户的信息,此时用ses ...

  2. Session小案例-----简单购物车的使用

    Session小案例-----简单购物车的使用 同上篇一样,这里的处理请求和页面显示相同用的都是servlet. 功能实现例如以下: 1,显示站点的全部商品 2.用户点击购买后,可以记住用户选择的商品 ...

  3. Hibernate入门(十一)多对多案例

    Hibernate多对多案例 1.用户对角色 DROP TABLE IF EXISTS emp_role; DROP TABLE IF EXISTS employee; DROP TABLE IF E ...

  4. IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题

    IT咨询顾问:一次吐血的项目救火   年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...

  5. ASP入门(九)-Request对象小案例

    我们将制作一个能够记住访问者姓名的页面,在这个小案例中,你将学会如何使用Request对象的Cookies.Form以及ServerVariables集合的值,还可以学习到如何使用Response对象 ...

  6. Hibernate的介绍及入门小案例

    1.Hibernate的诞生 在以前使用传统的JDBC开发应用系统时,如果是小型应用系统,并不觉得有什么麻烦,但是对于大型应用系统的开发,使用JDBC就会显得力不从心,例如对几十,几百张包含几十个字段 ...

  7. 02SpringMvc_springmvc快速入门小案例(XML版本)

    这篇文章中,我们要写一个入门案例,去整体了解整个SpringMVC. 先给出整个项目的结构图:

  8. 8天入门docker系列 —— 第五天 使用aspnetcore小案例熟悉容器互联和docker-compose一键部署

    这一篇继续完善webnotebook,如果你读过上一篇的内容,你应该知道怎么去挂载webnotebook日志和容器的远程访问,但是这些还远不够,webnotebook 总要和一些数据库打交道吧,比如说 ...

  9. spring boot入门小案例

    spring boot 入门小案例搭建 (1) 在Eclipse中新建一个maven project项目,目录结构如下所示: cn.com.rxyb中存放spring boot的启动类,applica ...

随机推荐

  1. LPC-LINK 2 Board IO TABLE

  2. LPC43xx SGPIO Experimentation

    LPC4350 SGPIO Experimentation The NXP LPC43xx microcontrollers have an interesting, programmable ser ...

  3. delphi shr和shl的作用

    x:=x shl 1 二进制数向左移1位,尾部补1个零,相当于x:=x*2;x:=x shl 2 二进制数向左移2位,尾部补2个零,相当于x:=x*4;...x:=x shl n 二进制数向左移n位, ...

  4. JavaScript学习总结(十五)——Function类

    在JavaScript中,函数其实是对象,每个函数都是Function类的实例,既然函数对象,那么就具有自己的属性和方法,因此,函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定. 一.函数的 ...

  5. Xamarin.Forms.Xaml.XamlParseException: MarkupExtension not found for trans:Translate using a PCL in Release Mode

    I'm pretty desperate finding the solution for the problem stated below. I have a cross platform solu ...

  6. 交叉编译Python-2.7.13到ARM(aarch64)平台

    方法跟交叉编译Python-2.7.13到ARM(aarch32)平台基本一样, 不同的地方只是把工具链换成编译aarch64的工具链,这里可以参考用qemu搭建aarch64学习环境. 创建目录: ...

  7. maven报错

    今天执行mvn test的时候提示: 错误:读取 /home/subaochen/.m2/repository/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.ja ...

  8. 在NDK C++线程中如何调用JAVA API

    from://http://www.eoeandroid.com/thread-150995-1-1.html 在NDK中创建的线程中, 只允许调用静态的Java API. 当在线程中调用env-&g ...

  9. cocos2d-x retain和release倒底怎么玩?

    转载请注明,原文地址: http://blog.csdn.net/musicvs/article/details/8689345 正文: 1. 为什么会有retain? C++和Java不一样,Jav ...

  10. [Android P] Android P版本 新功能介绍和兼容性处理(一)

    cp from :https://blog.csdn.net/yi_master/article/details/80046696 Android P版本已经到来,首篇我们当然要先看下Android ...