

图11 用户功能模块的文件架构
Fig 11 User functional module document construction
5.2.2 连接数据库模块设计
连接数据库模块的主要功能是使用OLE DB技术连接Access 2000数据库,并在需要连接数据库的页面中使用#include指令包含数据库连接文件即可,其关键程序代码如下:
<!--***************conn.asp*******************-- >
<%
set Conn=server.CreateObject("ADODB.Connection") '创建连接对象
strSQL="Driver={Microsoft Access Driver (*.mdb)};DBQ=" &_
server.MapPath("db1.mdb") '连接字符串
conn.open(strSQL)
%>
5.2.3 版面主题信息页面设计
版面主题信息页面的主要功能是展示版面对应的主题信息,页面中显示每条主题信息的编号,标题,作者,内容,回复数量和发表时间,并提供发表主题的入口、回复主题的入口和查看主题详细信息的入口。
版面主题信息页面通过查询主题信息表,显示每条主题对应的基本信息,并进行分页处理。页面中提供查看主题详细信息和回复信息的入口,其关键程序代码如下:
<!--***************bbs.asp*******************-- >
<%
sql="select * from [bbs] order by iid Desc"
set Rs=server.CreateObject("ADODB.Recordset")
Rs.open sql,conn,1,1
if Rs.recordcount>0 then
Dim pages,page
pages=5
Rs.PageSize=pages
Response.Write("<p>共有帖子"&Rs.RecordCount&"条!分为"&Rs.PageCount&"页!<p>")
page=CINT(request.QueryString("page"))
if page<1 then page=1
Rs.AbsolutePage=page
response.Write("<a href='bbs.asp?page=1'>首页</a>||")
response.Write("<a href='bbs.asp?page="&page-1&"'>上一页</a>||")
response.Write("当前这是第"&page&"页||")
response.Write("<a href='bbs.asp?page="&page+1&"'>下一页</a>||")
response.Write("<a href='bbs.asp?page="&Rs.pagecount&"'>尾页</a>")
else
response.Write("发帖为空![<a href='fatie.asp'>发帖</a>]")
图12 版面主题信息页面
Fig 12 Subject information page
5.2.4 用户注册模块设计
用户注册模块的主要功能是提供用户注册界面。只有网站的注册用户才能登陆论坛发表主题信息或者发表回复信息。
用户注册页面的主要功能是将用户填写的个人信息,包括用户名、密码等基本信息保存到数据库中。用户使用注册的用户名和密码登陆论坛,进行各项操作。
用户注册页面首先获取表单的数据,判断用户填写的用户名是否于数据库中存在的用户名重复。如果重复则返回到用户注册页面,提示用户重新填写;如果不重复,则将数据保存到用户表中,其关键程序代码如下:
<!--***************regist.asp*******************-- >
<%
isPostBack=trim(Request("IsPostBack")+"")
LoginName=trim(Request("LoginName")+"")
LoginPass1=trim(Request("LoginPass1")+"")
LoginPass2=trim(Request("LoginPass2")+"")
msgErr=""
if isPostBack="PostBack" then
if LoginPass1<>LoginPass2 then
msgErr="确认密码不正确,请重新输入!"
else