设为首页收藏本站
网站公告 | 这是第一条公告
     

 找回密码
 立即注册
缓存时间19 现在时间19 缓存数据 2月14号,321+4天的聊天记录灰了…只恨不够成熟优秀的自己守护不住最爱的nono…

2月14号,321+4天的聊天记录灰了…只恨不够成熟优秀的自己守护不住最爱的nono… -- 有可能的夜晚

查看: 837|回复: 0

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

[复制链接]

  离线 

TA的专栏

  • 打卡等级:常驻代表
  • 打卡总天数:31
  • 打卡月天数:0
  • 打卡总奖励:408
  • 最近打卡:2025-06-26 05:38:46
等级头衔

等級:晓枫资讯-上等兵

在线时间
0 小时

积分成就
威望
0
贡献
452
主题
414
精华
0
金钱
1740
积分
930
注册时间
2023-2-10
最后登录
2025-6-26

发表于 2023-2-14 13:13:30 | 显示全部楼层 |阅读模式

一、基本目标

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

141418bjxryvqayxyxkmux.png

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

141419ojhz21a0r2jdrnra.gif

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

141419ujsndds3fnnjffxr.gif

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

141419vblcc1nlcbltwxnx.gif

二、基本思想

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

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

站点的基本结构如下:

141419umwfj2m9g8lpi9mp.png

三、制作过程
整个站点使用utf-8码保证不会乱码,所以每一页在页头必须有,如果使用DW的高版本则自动添加,低版本请把gb2312改成utf-8,记事本自便。 

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

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>login</title>
  6. </head>
  7. <body>
  8. <form method="post" action="login.asp">
  9. username:<input type="text" name="username" />
  10. password:<input type="password" name="password" />
  11. <input type="submit" value="login" />
  12. </form>
  13. </body>
  14. </html>
复制代码

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

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>login</title>
  7. </head>
  8. <body>
  9. <%
  10. '向把login.html传过来的两个信息用变量保存起来
  11. username=Request.Form("username")
  12. password=Request.Form("password")
  13. '数据库是上一级目录的Database.mdb
  14. %>
  15. <%
  16. db="../Database.mdb"
  17. '连接数据库指定动作,这段必须独立地占用一个<%%>否则在某些情况下IE8会出错
  18. Set conn = Server.CreateObject("ADODB.Connection")
  19. conn.Open "driver={Microsoft Access Driver (*.mdb)};pwd=admin;dbq=" & Server.MapPath(db)
  20. %>
  21. <%
  22. Set rs = Server.CreateObject( "ADODB.Recordset" )
  23. '看表中是否有此username
  24. sql = "select * from test where username='"+username+"';"
  25. rs.open sql,conn,1,3
  26. '如果什么都查不到,弹窗,弹回login.html
  27. if (rs.bof and rs.eof) then
  28. %>
  29. <script>
  30. alert("查无此人");
  31. window.location.href = "login.html";
  32. </script>
  33. <%
  34. '否则拿查出来的密码,与用户输入的密码作对比,看是否一致
  35. '查出来的密码必须先用一个变量接住,在ASP中不能直接比较
  36. else
  37. dbpwd=rs("password")
  38. '如果不一致,则弹窗,ASP没有!=,表示不等于请用<>
  39. if password<>dbpwd then
  40. %>
  41. <script>
  42. alert("密码错误");
  43. window.location.href = "login.html";
  44. </script>
  45. <%
  46. else
  47. '如果用户名密码都输入正确,则有此用户,timeout是为了防止用户非正常退出的,如果5分钟没有任何操作则判定其已经退出,ok是正常登陆的标志
  48. Session.Timeout=5
  49. Session("username")=username
  50. Session("login")="ok"
  51. %>
  52. <script>
  53. alert("登陆成功");
  54. window.location.href = "success.asp";
  55. </script>
  56. <%
  57. end if
  58. end if
  59. '用完数据库记得关
  60. rs.close
  61. set rs=nothing
  62. conn.close
  63. set conn=nothing
  64. %>
  65. </body>
  66. </html>
复制代码

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

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>欢迎登陆</title>
  7. </head>
  8. <body>
  9. <%
  10. if Session.Contents("login")<>"ok" then
  11. %>
  12. <script>
  13. alert("请正常登陆!");
  14. window.location.href = "login.html";
  15. </script>
  16. <%
  17. else
  18. Response.Write("欢迎登陆,"+Session.Contents("username"))
  19. end if
  20. %>
  21. <a href="exit.asp">正常退出</a>
  22. </body>
  23. </html>
复制代码

4、exit.asp退出处理页面 

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>正在退出...</title>
  7. </head>
  8. <body>
  9. <%
  10. '所有session立即超时,并且移除所有session
  11. Session.Abandon
  12. Session.Contents.RemoveAll()
  13. %>
  14. <script>
  15. window.location.href = "login.html";
  16. </script>
  17. </body>
  18. </html>
复制代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持晓枫资讯。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
晓枫资讯-科技资讯社区-免责声明
免责声明:以上内容为本网站转自其它媒体,相关信息仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同其观点或证实其内容的真实性。
      1、注册用户在本社区发表、转载的任何作品仅代表其个人观点,不代表本社区认同其观点。
      2、管理员及版主有权在不事先通知或不经作者准许的情况下删除其在本社区所发表的文章。
      3、本社区的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,举报反馈:点击这里给我发消息进行删除处理。
      4、本社区一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
      5、以上声明内容的最终解释权归《晓枫资讯-科技资讯社区》所有。
http://bbs.yzwlo.com 晓枫资讯--游戏IT新闻资讯~~~
严禁发布广告,淫秽、色情、赌博、暴力、凶杀、恐怖、间谍及其他违反国家法律法规的内容。!晓枫资讯-社区
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|晓枫资讯--科技资讯社区 本站已运行

CopyRight © 2022-2025 晓枫资讯--科技资讯社区 ( BBS.yzwlo.com ) . All Rights Reserved .

晓枫资讯--科技资讯社区

本站内容由用户自主分享和转载自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

如有侵权、违反国家法律政策行为,请联系我们,我们会第一时间及时清除和处理! 举报反馈邮箱:点击这里给我发消息

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表