上一篇讲到了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> </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”)
本文原创:义乌网站建设 http://www.15ask.com 写于2012-04-15
3 感谢作者
2012-9-26 22:21:56
2 水草浪子
2012-4-17 19:32:48
1 海纳百川
2012-4-17 10:15:44