实现功能不难,想要完善,甚至完美,那才叫难。
所以,小弟将功能实现帖出来,和各位初学者讨论讨论。至于完善,就看各位自己的想法了
一、建立数据库
在就开始了,我建了一个名为windsn.mdb的数据库,包含4张表
admin表(用于管理员信息):id, name(用户名), pwd(密码), ...
concent表(用于存放文档数据):con_id, title, author, part, con, time, num
con_id 自动编号
title 文章标题
author 作者或出处
part 文章分类
con 文章内容
time 发表时间(用=now()做初始值)
num 被阅次数
part表(用于存放文档分类数据):id, part(分类), num
reply表(用于文档评论):con_id, rep_id, rep_name, rep_con, rep_time
con_id 与表concent中con_id字段相对应的字段,数字类型
rep_id 自动编号
rep_name 参与评论的用户名
rep_con 评论的内容
rep_time 评论时间
连接数据库文件conn.asp
以下是代码片段:
<%
Setconn=Server.CreateObject("ADODB.Connection")
conn.Open"DRIVER={MicrosoftAccessDriver(*.mdb)};DBQ="&Server.MapPath("db\windsn.mdb")
%>
然后,再每一个要连接数据库的页面前加入一行代码:<!--#include file="../Conn.asp" -->
二、设置session
为了防止非法登录,我们要建立一个session.asp。
以下是代码片段:
<%
ifsession("name")=""then
'如果用户名不存在,限制登录。(还可以再设置一个字段以增加安全性)
'如果管理员就只你一个人,那么上面这名可改为ifsession("name")<>"yourname"'then这样安全性会更高,也不用怕有漏洞,但就不灵活了。
response.write"<script>alert('对不起,您还没有登录!');
location='http:///'"></td>
</tr>
</form>
</table>
验证登录页check.asp<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
以下是代码片段:
<!--#includefile="../Conn.asp"-->
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>用户验证</title>
</head>
<%
name=request.form("name")'取得用户名
name=replace(name,"'","")
pwd=request.form("pwd")'取得密码
setrs=server.CreateObject("adodb.recordset")
sqlstr="select*fromadminwherename='"&name&"'"&"andpwd='"&pwd&"'"
rs.opensqlstr,conn,1,1
ifrs.eofthen
response.redirect"error.asp"'登录失败进入error.asp页
else
session("name")=request.form("name")
'设置session值,以便对页面进行限制登录。有了这行代码,再将上面提到的<!--#includefile="session.asp"-->代码加入到需要限制登录的页面中,该页面就必须登录成功后才能访问response.redirect"admins.asp"'登录成功后进入admins.asp的管理页,'本页中就要加入<!--#includefile="session.asp"-->代码
endif
%>
<body>
</body>
</html>