时间:2021-07-01 10:21:17 帮助过:4人阅读
一、基本目标 首先在Access数据库Database.mdb中存在着用户信息表test: 编写一个登陆系统,如果用户输入的用户名在表中没有,则提示“查无此人”,如果输入密码错误,则提示“密码错误” 如果用户输入的用户名与密码都正确,则跳转到登陆成功页 登陆成功页
一、基本目标
首先在Access数据库Database.mdb中存在着用户信息表test:
编写一个登陆系统,如果用户输入的用户名在表中没有,则提示“查无此人”,如果输入密码错误,则提示“密码错误”
如果用户输入的用户名与密码都正确,则跳转到登陆成功页
登陆成功页在普通情况下,不允许通过输入网址就能访问
二、基本思想
使用asp的session对象确保了用户名与密码的传递。
弹出部分使用了javascript的脚本语言
使用asp对用户信息表进行查询。
站点的基本结构如下:
三、制作过程
整个站点使用utf-8码保证不会乱码,所以每一页在页头必须有,如果使用DW的高版本则自动添加,低版本请把gb2312改成utf-8,记事本自便。
1、登陆页面login.html仅仅是一个表单的静态页面。关键是用post方法传递信息,Action是到login.asp
login
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>login <% '向把login.html传过来的两个信息用变量保存起来 username=Request.Form("username") password=Request.Form("password") '数据库是上一级目录的Database.mdb %> <% db="../Database.mdb" '连接数据库指定动作,这段必须独立地占用一个<%%>否则在某些情况下IE8会出错 Set conn = Server.CreateObject("ADODB.Connection") conn.Open "driver={Microsoft Access Driver (*.mdb)};pwd=admin;dbq=" & Server.MapPath(db) %> <% Set rs = Server.CreateObject( "ADODB.Recordset" ) '看表中是否有此username sql = "select * from test where username='"+username+"';" rs.open sql,conn,1,3 '如果什么都查不到,弹窗,弹回login.html if (rs.bof and rs.eof) then %>
3、success.asp
没什么好说的,关键是看他是否有正常登陆标志,login的内容是否为ok,没有则将其弹出登陆页面
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>欢迎登陆 <% if Session.Contents("login")<>"ok" then %>
4、exit.asp退出处理页面
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>正在退出... <% '所有session立即超时,并且移除所有session Session.Abandon Session.Contents.RemoveAll() %>