« 我的ASP经验之路(8)—ASP里的cookies与session是什么意思?十五年之后,仍旧果断选择Jack (Titanic 3D / 泰坦尼克号3D版的评论) »

我的ASP经验之路(9)—ASP里最简单的会员登录系统

分类: asp入门学习代码,asp经验 发布: ywask 浏览: 日期: 2012年4月15日

       上一篇讲到了cookies与session的用法,结合以前学的asp读取access数据库内容,那么我们可以写一个最简单的会员登录系统了。

1、 首先当然需要建一个表了,这里命名为data.mdb,新建一个表名为admin的数据表,里面新建三个字段,分别为:id (自动编号), username(varchar) 记录用户名,password(varchar) 记录密码。
 
2、 制作一个登录页面 login.htm 就是一个简单的表单提交,用来收集用户名与密码。
3、 判断用户名密码是否正确的页面 check.asp 代码如下:
<%
username=request.Form("username")
password=request.Form("password")
set rs=conn.execute("select password from [admin] where username='"&username&"'")
if rs.eof and rs.bof then
       response.Write("用户名错误")
       response.end()
else
       if rs(0)<>password then
              response.Write("密码错误")
              response.end()
       else
              session("mycheck")="20120415"
              response.redirect "index.asp"
       end if
end if
%>
 
这里为什么要把用户名与密码分开来读取判断呢?这样可以有效避免有些人用单引号可以直接避开判断。如: set rs=conn.execute("select password from [admin] where username='"&username&"' and password=’”&password&”’")
如果这样写,那么当用户名输入 ‘s’ or ‘s’ 这样时,系统不会判断密码,可以直接登录,所以这里写法要特别注意。
4、 当然就是主页面 index.asp 这里可以放一些需要登录后才能查看的内容,用session是否为空来判断是否要显示隐藏的内容。如:
<p>以下内容为加密内容,需要登录后方可查看。 <a href="login.htm"><strong>点击登录</strong></a></p>
<p>&nbsp;</p>
<%if session("mycheck")="20120415" then%>
您已经登录,<a href="logout.asp">点此退出登录</a>
<p><strong><font color="#FF0000">这里是加密内容。。。</font></strong></p>
<p><font color="#FF0000"><strong>登录后即可以看到。 </strong></font></p>
<%end if%>
5、 最后写一个logout.asp 退出登录的页面,清除session
 
这次的案例是以session为例写的,你可以把相应有session的地方换成cookies写法也行。如:
写入session的时候,session(“mycheck”)=”20120415” 改成 response.cookies(“mycheck”)=”20120415”
在判断的时候,需要读取cookies值,改成 request.cookies(“mycheck”)
 

相关文章:

  • quote

    回复该留言 3 感谢作者

    2012-9-26 22:21:56

    一直云里雾里的,看了你写的,代码精简,非常适合初学者,再次感谢!

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By 义乌乱码网络

Copyright 2013 www.15ask.com. All Rights Reserved.浙ICP备11009494号