菜鸟十天学会ASP教程之第九天:Session组件

session|教程|十天学会

  上一节:修改记录

  学习目的:基本的SESSION组件,总结response,request组件。

  首先,有会员系统的任何程序都会用到检测是不是用户已经登陆这个步骤。这就用到了SESSION组件,下面我们 看一个代码来说明。

<%
session("login")="yes"
%>

  这句话的意思就是在session里面定义一个login字符串变量,值为"yes",直接可以赋值,不需要声明。是不是很简单?

  如果我们做管理员登陆系统的话,首先是一段检测是不是管理员:

if 是 then
session("isadmin")=yes"
else
session("isadmin")="no"
end if

  在每一个需要管理员才能看的页面最前面加上:

<%
if not session("isaadmin")="yes" then
response.redirect "login.htm"
%>

  这样一般用户就无法打开这个页面。解释一下response.redirect,它是转向的意思,后面的"login.htm"就是转向的文件。这样没有登陆的管理员是无法看到后面的内容的。

  response组件基本就是用到response.write(),response.redirect() 分别是写字符串和转向的作用。

  request基本就是request.form(),request.querystring() 分别是接受post,get方法传来的信息。

  最后我们一起来制作一个简单的后台登陆管理界面,首先在myweb目录下建立一个admin文件夹,然后我们建立一个数据库名字为admin.mdb,然后我们再建立一个表,表中设置两个字段name,password,类型都是文本型的!最后退出时设置主键,保存为表名check。然后可以输入一条记录用户名:admin,密码:admin。具体建立数据库的方法请看《菜鸟十天学会ASP教程之第三天:数据库的建立

  下面我们开始编写ASP程序,首先建立一个index.asp(管理主界面)程序,代码如下:

<%@language=vbscript%>
<%if not session("checked")="yes" then
response.Redirect "login.asp" 
else
%>
<html>
<head>
<title>管理界面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<frameset cols="167,*" frameborder="YES" border="1" framespacing="1" rows="*" bordercolor="#666666">
  <frame name="leftFrame" scrolling="auto" noresize src="left.asp">
  <frame name="mainFrame" src="right.asp">
</frameset>
<noframes>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</noframes>
</html>
<%end if%>

  在上面的代码中,大家可以看到用到login.asp,left.asp,right.asp程序

  login.asp://登陆系统程序

<html>
<head>
<title>管理员入口</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
.topic {  font-family: "宋体"; font-size: 11pt; font-weight: bold; color: #FFFFFF}
.font {  font-family: "宋体"; font-size: 10pt; font-weight: normal; color: #000000}
.table {  border-color: #666666 black; border-style: solid; border-top-width: 1pt; border-right-width: 0px; border-bottom-width: 1pt; border-left-width: 0px}
.text {  border: 1pt #999999 solid; height: 15pt}
-->
</style>
</head>

<body text="#000000" topmargin="0" bgcolor="#FFFFFF">
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center" height="100%">
  <tr>
    <td height="129" valign="top" colspan="3">  </td>
  </tr>
  <tr>
    <td width="230" height="170" valign="top"> </td>
    <td valign="top" width="277">
      <table width="100%" border="0" cellspacing="1" cellpadding="0" height="100%" bgcolor="#000000" align="center">
        <tr>
          <td align="center" valign="middle" height="167">
            <form name="form1" method="post" action="check.asp">
              <table width="100%" border="0" cellspacing="0" cellpadding="0" height="100%">
              <tr bgcolor="#62892C">
                <td height="31" class="topic" colspan="2">
                  <div align="center">管理员入口<br>
                  </div>
                </td>
              </tr>
              <tr>
               
                  <td bgcolor="#87bc3c" colspan="2" class="table">
                    <div align="center"> <span class="font"> 管理员:</span>
                      <input type="text" name="name"  class="text" size="20" >
                      <br>
                      <span class="font">密 码:</span>
                      <input type="password" name="password" class="text" size="20" ><%if session("check")="wrong" then response.Write "<br><span class='font'><font color=red>验证错误!</font></span>" end if%>
                    </div>
                  </td>
            
              </tr>
              <tr>
                <td bgcolor="#87bc3c" width="52%">
                    <div align="center" class="font">
                      <input type="reset" name="Submit2" value="重置" class="text">
                    </div>
                </td>
                <td bgcolor="#87bc3c" width="48%">
                    <div align="center" class="font">
                      <input type="submit" name="Submit22" value="提交" class="text">
                    </div>
                </td>
              </tr>
            </table>   </form>
          </td>
        </tr>
      </table>
    </td>
    <td width="241" valign="top"> </td>
  </tr>
  <tr>
    <td height="123" valign="top" colspan="3"> </td>
  </tr>
</table>
</body>
</html>

  在上面的程序中用到一个检查用户和密码是否正确的程序check.asp://核对输入的用户和密码是否正确

<%
dim name,password
name=request.form("name")
password=request.form("password")
dim exec,conn,rs
exec="select *from check where(name='"&name&"' and password='"&password&"')"
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("admin.mdb")
set rs=server.createobject("adodb.recordset")
rs.open exec,conn
if not rs.eof then
rs.Close
conn.Close
session("checked")="yes"
session("check")="right"
response.Redirect "index.asp"
else
session("checked")="no"
session("check")="wrong"
response.Redirect "login.asp"
end if
%>

  left.asp://管理导航

<%@language=vbscript%>
<%if not session("checked")="yes" then
response.Redirect "login.asp" 
else
%>
<html>
<head>
<title>管理界面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body text="#000000" topmargin="0" bgcolor="#ffffff" leftmargin="10">
<div align="center"><a href="index.asp" target="_parent"><br>
  <br>
  管理界面首页</a> <a href="exit.asp" target="_parent">退出</a><br> 
  <br>
</div>
</body>
</html>
<%end if%>

  exit.asp://退出系统

<%@language=vbscript%>
<%
session("check")=""
session("checked")=""
response.redirect "login.asp"
%>

  right.asp://具体管理的内容

<%@language=vbscript%>
<%if not session("checked")="yes" then
response.Redirect "login.asp" 
else
%>
<html>
<title>管理界面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#ffffff" text="#000000" topmargin="20" class="title">

这里是网页教学网的管理系统示例!请大家多研究使用!
</body>
</html>
<%end if%>

  运行时首先运行index.asp程序,运行效果部分截图如下:

  下一节:分页技术

时间: 2024-10-04 18:21:15

菜鸟十天学会ASP教程之第九天:Session组件的相关文章

菜鸟十天学会ASP教程之第一天:安装调试ASP的环境

教程|十天学会 学习目的:安装调试ASP的环境,并且调试第一个简单的程序. 因为我们学ASP的目的就是想建立一个网站,那么一般习惯是建立的网站内所有文件应该同时放到一个文件夹中(当然这个文件夹中还可以按需要设置子文件夹!),所以在这里我在E盘建立一个myweb的文件夹. 首先来安装Windows 2000/XP自带的IIS作为服务器.在这里因为我的机器是XP所以所有截图都是XP下完成的. 控制面板-->>添加或删除程序. 然后是添加删除windows组件-选中IIS组件前面的勾,之后等待安装,

菜鸟十天学会ASP教程之第二天:表单传送变量

变量|教程|十天学会 上一节:安装调试ASP环境 学习目的:学会用表单元素向服务器传送变量,然后显示变量在客户端的浏览器. 首先,让我们来看一下表单元素. 点击这里请查看具体的表单标签的使用 表单元素要放在一个表单域里面,建立一个表单域.然后修改动作里面的文件为要接受这个表单变量的ASP文件.方法有两种,一种是POST,这个方法传送的变量不会在浏览器的地址栏里面显示,可以大批量传送数据:GET则是会在浏览器地址栏里面显示的,等一会举例子. 下面我们看一个表单元素. 文本域,这个是最基本的,传送的

菜鸟十天学会ASP教程之第四天:数据库的连接和读取

教程|十天学会|数据|数据库 上一节:数据库的建立 学习目的:掌握ACCESS数据库的连接和读取记录 首先还打开我们上一节课建立的数据库中的表,随便输入几条记录,如下图: 这节课学习的内容有一点枯燥,但是很重要.在这里不需要知道命令具体的运行情况,外面的很多书籍之所以不适合入门就是因为介绍了太多的理论知识,让初学者一头雾水. 下面开门见山,看两行代码: <% set conn=server.createobject("adodb.connection") conn.open &q

菜鸟十天学会ASP教程之第五天:写入记录

教程|十天学会 上一节:连接并读取数据库 学习目的:学会数据库的基本操作--写入记录 数据库的基本操作无非是:查询记录,写入记录,删除记录,修改记录. 今天我们先学习写入记录.先建立一个表单:(把下面文章保存为5.htm) <form name="form1" method="post" action="exa5.asp">name <input type="text" name="name&quo

菜鸟十天学会ASP教程之第六天:查询记录

教程|十天学会 上一节:写入记录 学习目的:学会数据库的基本操作--查询记录 在第四天中我们用到下面这样一个程序: <% set conn=server.createobject("adodb.connection") conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/guestbook.mdb") exec="se

菜鸟十天学会ASP教程之第七天:删除记录

教程|十天学会 上一节:查询记录 学习目的:学会数据库的基本操作--删除记录 开门见山,大家直接看程序. exec="delete * from guest where id="&request.form("id") 上面这句话完成了删除记录的操作,不过锁定记录用了记录唯一的表示id,我们前面建立数据库的时候用的是系统给我们的主键,名字是编号,由于是中文的名字不是很方便,大家可以修改为id,我已经修改了啊! 不修改的话就是用下面的代码了: exec=&quo

菜鸟十天学会ASP教程之第八天:修改记录

教程|十天学会 上一节:删除记录 学习目的:学会数据库的基本操作--修改记录 先来看代码:(存为exam8.asp就可以了) <%set conn=server.createobject("adodb.connection")conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/guestbook.mdb")exec="

菜鸟十天学会ASP教程之第十天:分页技术

分页|教程|十天学会 上一节:Session组件 学习目的:分页技术 今天最后一天我们学习一下ASP里面稍微难一点地分页技术,毕竟当我们有N条记录的时候我们不可能把所有记录显示在一个页面里面吧. <%exec="select * from test"set rs=server.createobject("adodb.recordset")rs.open exec,conn,1,1rs.PageSize=3pagecount=rs.PageCount page=

菜鸟十天学会ASP教程之第三天:数据库的建立

教程|十天学会|数据|数据库 上一节:表单传送变量 学习目的:学会ACCEES数据库的使用. 首先,要安装OFFICE里面的ACCEES(我的演示是OFFICE 2003版本),安装过程这里就不说了,安装好以后会,打开Access.按空数据库,新建一个数据库,文件名字可以叫guestbook.mdb.(提示:为了安全期间,文件名复杂一点好,因为ACCESS数据库可以被下载的!!) 使用设计器创建新的表,一个数据库MDB文件里面可以建立多个表.双击"使用设计器创建表" 填写字段名字然后选