ASP BBS论坛设计.docx
- 文档编号:23735473
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:35
- 大小:1.27MB
ASP BBS论坛设计.docx
《ASP BBS论坛设计.docx》由会员分享,可在线阅读,更多相关《ASP BBS论坛设计.docx(35页珍藏版)》请在冰豆网上搜索。
ASPBBS论坛设计
ASP课程设计
BBS主题论坛的的设计与实现
学生姓名:
班级:
专业:
指导教师:
2012年5月4日
摘要
为了方便师生信息的交流,在结合动态服务网页(ASP)和SQLServer2000技术之下开发了这个快截、界面友好的师生交流系统。
论坛使用动态服务网页(ASP)技术建设论坛的骨干框架,使用SQLServer2000制作系统的数据库,实现了一个功能相对齐全的论坛系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。
该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的知识。
该论坛还有一些特殊的功能,如强大的搜索功能。
经调试,这个论坛完全可以成为一个很好的师生交流平台,充分利用有限的教育资源,提高资源利用率,同时又能活跃学习氛围,使学习、工作更加方便。
关键词:
动态网页,论坛,ASP,数据库
一、引言
当今社会,越来越多的人开始使用网络,越来越多的人离不开网络。
网络成为人们生活不能缺少的一部分。
网络聊天,电子邮件,论坛等等可以使人们非常方便的传递消息。
网络也被运用到各个方面,许多的公司都拥有自己的网站,用于宣传自己的公司以及和客户之间的交流。
同时随着网络的加速发展,静态的网页已经不能满足大家的要求,这时出现了一些服务器端的技术。
ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。
ASP的网页文件的格式是.asp,现在常用于各种动态网站中。
ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。
ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。
利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。
本次设计我们选用了SQLServer2000和ASP作为开发工具,用Dreamweaver8.0设计并实现了校园BBS论坛系统。
该系统应用动态网页技术实现了论坛发帖,回复,会员登录系统,后台管理和搜索系统。
二、开发环境介绍
2.1ASP简介
简单地讲,ASP就是为客户提供服务的服务商,它和会计事物所、婚姻介绍所没有什么本质方面的区别。
不同的是ASP主要是通过INTERNET(国际互联网络)作为主要工作和业务工具,采用一对多的方式,向企业、公司提供标准化的应用软件以及相关的技术咨询、管理租赁的服务,ASP的概念最早是1998年由美国人提出来的。
目前被全球各大IT厂商看好并被认为是可以推动网络经济发展的,有稳固基础的第三种网络商业模式。
和传统的外包服务(Outsourcing)相比,ASP的主要区别在于:
ASP是一对多的经营模式,提供的服务有兼容性和可协调性,并且ASP的收费方式一般是按月收费。
业界认为:
ASP一般有这样一些“成员”:
电信运营商、传统IT服务厂商、互联网络接入服务商(ISP)、独立软件供应商(ISV)、系统集成商和单纯的ASP公司。
根据流行的观点,ASP有如下五个核心内涵:
1.ASP着重应用为中心,提供对于应用方面的访问和管理。
2.ASP服务可以为用户提供没有在服务器、人员、系统和系统授权等前期资源投入情况下就可以在“定制”的全新应用系统环境进行访问的服务,如ISP,而这样的服务一般按月份ASP收取服务费。
3.ASP采用集中管理的方式---ASP一般都有一个管理中心,所有的客户通过INTERNET来进行远程访问,获得技术支持和咨询服务。
4.一对多的服务,也就是讲,ASP提供的是标准化的产品包,产品都是最低程度的自定义或者没有实现客户定制化,对于行业用户来讲已经达到实用方便的标准。
5.按照合同交付,在ASP客户的眼中,ASP是一家根据客户协议内容提供相关服务,保证应用服务系统服务可以得到确实履行的机构。
2.1.1ASP的概念
概述ASP是ActiveServerPage的缩写,意为“动态服务器页面”。
ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。
ASP的网页文件的格式是.asp,现在常用于各种动态网站中。
ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。
ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。
利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。
2.1.2ASP的特点
1.利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;
2.ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;
3.服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;
4.ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。
例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;
5.ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现和那个Email或访问文件系统等。
6.由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。
2.1.3ASP的工作原理
当在Web站点中融入ASP功能后,将按照以下流程运作:
1.用户向浏览器地址栏输入网址,默认页面的扩展名是.asp
2.浏览器向服务器发出请求
3.服务器引擎开始运行ASP程序
4.ASP文件按照从上到下的顺序开始处理,执行脚本命令,执行HTML页面内容
5.页面信息发送到浏览器
2.1.4ASP的运行环境
Asp需要运行在IIS下。
IIS服务在windows的光盘上附带着,可以通过“添加/删除程序”中的“添加/删除windows组件”来安装。
一般asp需与access数据库或SQLServer数据库结合使用,编出功能强大的程序。
2.2Dreamweaver简介
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。
2.2.1Dreamweaver特点
Dreamweaver的特点:
1.最佳的制作效率
Dreamweaver可以用最快速的方式将Fireworks,FreeHand,或Photoshop等档案移至网页上。
只要单击便可使Dreamweaver自动开启Firework或Photoshop来进行编辑与设定图档的最佳化。
2.网站管理
使用网站地图可以快速制作网站雏形、设计、更新和重组网页。
改变网页位置或档案名称,Dreamweaver会自动更新所有连结。
使用支援文字、HTML码、HTML属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单。
3.无可比拟的控制能力
Dreamweaver是唯一提供RoundtripHTML、视觉化编辑与原始码编辑同步的设计工具。
三、BBS论坛设计分析与总体设计
3.1可行性分析
随着网络的快速普及,越来越多的人喜欢在网上交流和学习,他们想要一个提供个性化装饰和能与人的交流、能发表自己的言论,思想和心声的一种媒介。
这时,论坛应运而生。
面对庞大的信息量,论坛系统可以提高信息管理工作的效率。
通过这样的系统可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量,便利人们生活和工作。
3.2论坛系统总体设计
3.2.1BBS论坛总体功能模块
1、会员注册
新会员注册,提供会员信息,检验会员信息的有效性,并将会员信息持久化。
2、会员登录
提供用户凭证,验证用户信息,基于角色授权。
3、会员管理
管理员由系统初始化分配一个,管理员可以对会员信息进行部分更改,主要包括用户角色调整,删除会员等。
4、论坛版块管理
管理员可以添加、删除、调整论坛版块。
5、帖子管理
管理员可以对所有帖子进行删除操作,可以设置每页显示帖子数量,帖子回复每页显示数量,新帖列表显示帖子数量。
6、帖子发表
注册用户可以在感兴趣的版块中发表新主题帖。
7、帖子回复
用户可以对自己感兴趣的主题发表回复。
8、帖子浏览
用户可以浏览所有可见帖子。
9、帖子检索
用户可以提供标题关键字检索所以可见主题帖,注册用户可以查看自己发表或回复的帖子。
10、意见建议
用户可以与我们联系,并欢迎提出各种意见和建议。
3.3论坛系统总体功能需求框架图
BBS系统总体设计分为10个功能模块,实现系统的发帖、回帖、会员注册、会员管理等等设计的功能,总体功能需求框架如图所示:
系统功能框架图
四、BBS论坛系统详细设计
4.1系统主要业务操作流程
1.会员注册流程:
会员填写个人信息→信息合法性检验→会员信息持久化
具体操作如图所示:
会员注册流程图
2.会员登录流程:
输入用户凭证→合法验证→基于角色授权
具体流程图如图所示:
会员登录流程图
3.帖子发表
注册用户→选择版块→发表主题
具体流程图如图所示:
帖子发表流程图
4.帖子回复:
用户→针对主题发表回复→回复持久化
具体流程图如图所示:
帖子回复流程图
5.帖子搜索:
用户→按检索条件返回帖子
具体流程图如图所示:
帖子搜索流程图
五、数据库设计
5.1BBS论坛系统中的数据库
我们所设计的数据库命名为mydb。
它主要包含了版块信息表bankuai,帖子详细信息表tiezi,论坛会员表huiyuan和论坛信息表luntan。
可以同过对这几个表进行插入、添加、修改、删除和查询,可以对会员、帖子、板块和论坛的各个部分进行管理。
各个表结构入下:
版块信息表bankuai
字段
类型
长度
必填字段
允许空值
说明
xuhao
自动编号
长整型
必填
否
栏目编号(主键)
mingzi
文本
30
否
是
栏目名称
jianjie
文本
255
否
是
栏目简介
帖子详细信息表tiezi
字段
类型
长度
必填字段
允许空值
说明
xuhao
自动编号
长整型
必填
否
帖子编号(主键)
xinqing
数字
整型
否
是
心情
biaoti
文本
50
否
是
帖子标题
Content
备注
否
是
帖子详细内容
Name
文本
10
否
是
发帖者名称
Time
日期/时间
否
是
发帖时间
bankuai
数字
整型
否
是
帖子所属版块栏目
RNumber
文本
20
否
是
帖子回复数量
shanchu
数字
整型
否
是
删除帖子
SNumber
数字
长整型
否
是
帖子浏览数
论坛会员表huiyuan
字段
类型
长度
必填字段
允许空值
说明
mingzi
文本
10
否
是
会员名称(主键)
mima
文本
20
否
是
会员密码
jianjie
文本
255
否
是
会员简介
shantie
日期/时间
否
是
删帖信息
dingtie
日期/时间
否
是
顶帖信息
论坛信息表luntan
字段
类型
长度
必填字段
允许空值
说明
meiyetiezi
数字
整型
否
是
每页帖子
meiyehuifu
数字
整型
否
是
每页回复
shantiejiange
数字
整型
否
是
删帖间隔
shanchushu
数字
整型
否
是
删除数
dingtiejiange
数字
整型
否
是
顶帖间隔
fangwenliang
数字
长整型
否
是
访问量
zuixinshu
数字
整型
否
是
最新数
youkefatie
数字
字节
否
是
游客发帖
houtaimima
文本
255
否
是
后台密码
liulanpaixu
数字
字节
否
是
浏览排序
shangchuan
数字
长整型
否
是
上传
5.2系统实现方案
5.2.1论坛主页
论坛主页显示论坛各个栏目版块,用户可以单击导航条上各个栏目的链接进入到栏目的帖子列表页面,主页可以通过读取版块信息表中的数据来显示版块的数量,版块的简介,版块帖子数,版块回复数。
论坛主页如图所示:
首页界面
如果没有版块,首页会如图所示:
板块界面
5.2.2论坛讨论页
讨论区列表页面主要可以从tiezi表中读取论坛的帖子标题,简介用列表的形式显示出来,主要功能可以让游客和会员发帖并显示出来,统计帖子的回复和浏览量。
如果该版块没有帖子,如图所示:
论坛讨论页界面
如果游客发了帖子如图所示:
发帖成功界面
如果游客进入页面浏览,则会在作者处显示游客。
如果会员发帖,会显示会员名。
如果有人发表了浏览了该帖和回复了,如图所示:
回复成功界面
以下代码可实现上述功能,见下表:
显示帖子相关代码:
<%sql="selectxuhao,biaoti,xinqing,mingzi,liulanfromtieziwherebankuai="&xuhao&"andtiezi='tiezi'orderbyshijiandesc"
settiezi=server.CreateObject("adodb.recordset")tiezi.opensql,lj,1,2
iftiezi.bofandtiezi.eofthen
Response.Write(" ")本版没有帖子
elseifrequest("ye")=""thenye=1
elseye=cint(request("ye"))endifsetluntan=lj.execute("selectmeiyetiezifromluntan")
tiezi.pagesize=luntan("meiyetiezi")tiezi.absolutepage=yezong=tiezi.pagecounttou=luntan("meiyetiezi")dowhilenottiezi.eofandtou>0tou=tou-1%>
<%response.Write(tiezi("liulan"))%>
<%shuyu=tiezi("xuhao")sethuifu=lj.execute("selectcount(*)ashuifufromtieziwheretiezi='"&shuyu&"'")response.Write(huifu("huifu"))%>
5.2.3发帖功能和回复功能
1、发帖功能
发帖功能是论坛最基本的功能,发帖页面将发表的帖子信息写入帖子表tiezi,
发帖页如图所示:
发帖界面
发表成果会跳会版块并显示出刚刚发的帖子:
如图所示:
发帖成功界面
发帖功能通过以下代码实现,见下表:
发帖相关代码:
<%bankuai=clng(Request("xuhao"))xinqing=Request.Form("xinqing")
biaoti=Trim(Request.Form("biaoti"))
ifinstr(biaoti,"'")>0orinstr(biaoti,"")>0then
response.Redirect("b_fatie.asp?
fanhui=feifa&bankuai="&bankuai&"")
endifneirong=replace(Trim(Request.Form("neirong")),"'","@#$%3v42q")
mingzi=request.Cookies("mingzi")cmima=request.Cookies("mima")
ifInstr(mingzi,"=")>0orInstr(mingzi,"'")>0orInstr(mingzi,"(")>0orInstr(mingzi,")")>0thenresponse.Redirect("b_bankuai.asp")
endif
setyouke=lj.execute("selectyoukefatiefromluntan")
ifyouke("youkefatie")<>0then
ifmingzi=""thenresponse.Redirect("b_fatie.asp?
fanhui=youke&bankuai="&bankuai&"")
endif
endif
ifmingzi=""thenmingzi="游客"
elsesetyz=lj.execute("selectmimafromhuiyuanwheremingzi='"&mingzi&"'")
ifyz("mima")<>cmimathenresponse.Redirect("b_bankuai.asp")
endif
endif
ifbiaoti=""orneirong=""then
response.Redirect("b_fatie.asp?
fanhui=kong&bankuai="&bankuai&"")
endififlen(neirong)>65535then
response.Redirect("b_fatie.asp?
fanhui=duo&bankuai="&bankuai&"")
endif
lj.execute("insertintotiezi(xinqing,biaoti,neirong,mingzi,shijian,bankuai,tiezi)values("&xinqing&",'"&biaoti&"','"&neirong&"','"&mingzi&"',now(),"&bankuai&",'tiezi')")response.Redirect("b_luntan.asp?
bankuai="&bankuai&"")%>
2、回帖功能
回帖也是论坛的基本功能之一,主要是发表对主题的意见
帖子详细内容页面如图所示:
回帖界面
用户可以通过此页面对主题进行评论和回复,成功后的显示如图所示:
回帖成功界面
回帖功能实现需要以下代码,见下表:
回帖相关代码:
<%sql="select*fromtieziwheretiezi='"&tiezi&"'orderbyshijian"
setliulanpaixu=lj.execute("selectliulanpaixufromluntan")
ifliulanpaixu("liulanpaixu")=0then
sql=sql+"desc"
endif
sethuifu=server.CreateObject("adodb.recordset")
huifu.opensql,lj,1,2
ifhuifu.bofandhuifu.eofthen
Response.Write(" ")没有回复帖子
else
ifrequest("ye")=""then
ye=1
else
ye=cint(request("ye"))
endifsetluntan=lj.execute("selectmeiyehuifufromluntan")
huifu.pagesize=luntan("meiyehuifu")
huifu.absolutepage=ye
zong=huifu.pagecount
tou=luntan("meiyehuifu")
dowhilenothuifu.eofandtou>0
tou=tou-1%>
回帖相关代码
5.2.4会员系统
1、会员注册页
会员注册页可以通过向数据库huiyuan表中插入数据来实现会员注册,注册后自动登录。
也可以退出转回论坛首页。
会员注册页如图所示:
:
会员登录界面
如果注册成功会显示已登录,并跳转到版块页面如图所示:
用户注册成功跳转界面
以上会员注册功能通过以下代码实现,见下表:
会员注册相关代码:
<%mingzi=Trim(Request.Form("mingzi"))mima=Request.Form("mima")
mima2=Request.Form("mima2")
ifmingzi=""ormima=""ormima2=""then
response.Redirect("b_zhuce.asp?
fanhui=kong")
elseifmingzi="游客"then
response.Redirect("b_zhuce.asp?
fanhui=youke")
elseifmima<>mima2then
response.Redirect("b_zhuce.asp?
fanhui=mima")
elseifInstr(mingzi,"=")>0orInstr(mingzi,"'")>0orInstr(mingzi,"(")>0orInstr(mingzi,")")>0then
response.Redirect("b_zhuce.asp?
fanhui=feifa")
endif
setjc=lj.execute("selectmingzifromhuiyuanwheremingzi='"&mingzi&"'")
ifnotjc.eofthen
response.Redirect("b_zhuce.asp?
fanhui=chong")
endif
lj.execute("insertintohuiyuan(mingzi,mima)values('"&mingzi&"','"&mima&"')")
response.Cookies("mingzi")=mingzirespon
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP BBS论坛设计 BBS 论坛 设计