当前位置: 首页 > 编程笔记 >

ASP 连接Access数据库的登陆系统

赵珂
2023-03-14
本文向大家介绍ASP 连接Access数据库的登陆系统,包括了ASP 连接Access数据库的登陆系统的使用技巧和注意事项,需要的朋友参考一下

一、基本目标

首先在Access数据库Database.mdb中存在着用户信息表test:


编写一个登陆系统,如果用户输入的用户名在表中没有,则提示“查无此人”,如果输入密码错误,则提示“密码错误”


如果用户输入的用户名与密码都正确,则跳转到登陆成功页


登陆成功页在普通情况下,不允许通过输入网址就能访问


二、基本思想

使用asp的session对象确保了用户名与密码的传递。

弹出部分使用了javascript的脚本语言,使用asp对用户信息表进行查询。

站点的基本结构如下:


三、制作过程
整个站点使用utf-8码保证不会乱码,所以每一页在页头必须有<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,如果使用DW的高版本则自动添加,低版本请把gb2312改成utf-8,记事本自便。 

1、登陆页面login.html仅仅是一个表单的静态页面。关键是用post方法传递信息,Action是到login.asp

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>login</title>
</head>

<body>
<form method="post" action="login.asp"> 
username:<input type="text" name="username" />
password:<input type="password" name="password" />
<input type="submit" value="login" />
</form>
</body>
</html>

 2、login.asp登陆验证页面是本系统最核心的页面

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>login</title>
</head>

<body>

<%
'向把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
%>
<script>
alert("查无此人");
window.location.href = "login.html";
</script>
<%
'否则拿查出来的密码,与用户输入的密码作对比,看是否一致
'查出来的密码必须先用一个变量接住,在ASP中不能直接比较
else
dbpwd=rs("password")
'如果不一致,则弹窗,ASP没有!=,表示不等于请用<>
if password<>dbpwd then
%>
<script>
alert("密码错误");
window.location.href = "login.html";
</script>
<%
else
'如果用户名密码都输入正确,则有此用户,timeout是为了防止用户非正常退出的,如果5分钟没有任何操作则判定其已经退出,ok是正常登陆的标志
Session.Timeout=5
Session("username")=username
Session("login")="ok"
%>
<script>
alert("登陆成功");
window.location.href = "success.asp";
</script>
<%
end if
end if
'用完数据库记得关
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
</body>
</html>

 3、success.asp
 没什么好说的,关键是看他是否有正常登陆标志,login的内容是否为ok,没有则将其弹出登陆页面 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>欢迎登陆</title>
</head>

<body>
<%
if Session.Contents("login")<>"ok" then 
%>
<script>
alert("请正常登陆!");
window.location.href = "login.html";
</script>
<%
else
Response.Write("欢迎登陆,"+Session.Contents("username"))
end if
%>
<a href="exit.asp">正常退出</a>
</body>
</html>

4、exit.asp退出处理页面 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>正在退出...</title>
</head>

<body>
<%
'所有session立即超时,并且移除所有session
Session.Abandon
Session.Contents.RemoveAll()
%>
<script>
window.location.href = "login.html";
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 我正在尝试创建一个在线简历,并已将所有信息存储到Access DB中,当我使用ASP按钮创建标签,然后尝试使用标签在te DB中查找相关信息时,我需要以下错误的帮助。 下面是我的错误 FROM子句中存在语法错误。描述:在执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源。 异常详细信息:系统。数据OleDb。OLEDBEException:FROM

  • 在数据库原理中,关系运算包含 选择、投影、连接 这三种运算。相应的在SQL语句中也有表现,其中Where子句作为选择运算,Select子句作为投影运算,From子句作为连接运算。 连接运算是从两个关系的笛卡尔积中选择属性间满足一定条件的元组,在连接中最常用的是等值连接和自然连接。 等值连接:关系R、S,取两者笛卡尔积中属性值相等的元组,不要求属性相同。比如 R.A=S.B 自然连接(内连接):是一

  • 本文向大家介绍11种ASP连接数据库的方法,包括了11种ASP连接数据库的方法的使用技巧和注意事项,需要的朋友参考一下 ASP连接数据库的11种方法——本文总结了使用ASP链接各种数据库的方法: 1.Access数据库的DSN-less连接方法: 2.Access OLE DB连接方法: 3.SQL server连接方法: 4.SQL server OLE DB连接方法: 5.Oracle 连接方

  • 本文向大家介绍ASP.NET oledb连接Access数据库的方法,包括了ASP.NET oledb连接Access数据库的方法的使用技巧和注意事项,需要的朋友参考一下 使用OleDBCommand相关操作类需要引入System.Data.OleDb命名空间。 通过连接一个带密码的access数据库 读取其中的数据并置入表格中显示,验证连接和命令使用正确性。 效果图如下: 完整项目文件已上传。

  • 本文向大家介绍PHP使用PDO连接ACCESS数据库,包括了PHP使用PDO连接ACCESS数据库的使用技巧和注意事项,需要的朋友参考一下 1,参考W3CSHOOL http://www.w3cschool.cc/php/php-pdo.html 2,连接access 以上就是简单的实用php的pdo方式连接ACCESS数据库的方法了,希望大家能够喜欢。

  • 我已经把学校的IT项目带回家完成,虽然我可以在学校连接到我的数据库,但我不能在我自己的电脑上连接到它。我更改了数据库类中的目录,并且几乎100%确定该目录是正确的。它总是给我这样的错误: 驱动程序成功加载无法连接:[Microsoft][ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序java.sql.sqlException:[Microsoft][ODBC驱动程序管理器]未找到数据