论坛系统课程设计.docx
- 文档编号:25628112
- 上传时间:2023-06-10
- 格式:DOCX
- 页数:29
- 大小:433.95KB
论坛系统课程设计.docx
《论坛系统课程设计.docx》由会员分享,可在线阅读,更多相关《论坛系统课程设计.docx(29页珍藏版)》请在冰豆网上搜索。
论坛系统课程设计
摘要
当今出现的网上论坛,与其它一切媒体相比,可以更加自由地发表、交流各种观点,可以非常及时地,广泛、深入地,具体讨论、辩论各种重要,但常有尖锐分歧。
办好网上论坛,就能非常及时地:
使许多创新的思想、观点得以交流、展示,使正确的,能更加明确、丰富,更加普及、传播;使错误的,能得到及时批判、纠正,而不致造成泛滥、毒害;使真理,越辩越明,更加深入发展。
因而,网上论坛是世界上真正最为民主、自由的乐土,是贯彻执行“百花齐放、百家争鸣”方针的有力工具,是培育、发展各种创新思想的重要苗圃。
本系统的主要功能模块有登录模块、注册模块、密码找回模块等。
本文将使用ASP.NET和SQL2005作为论坛的开发工具。
关键词:
网上论坛;ASP.NET;SQL2005。
第1章绪论
当今出现的网上论坛,与其它一切媒体相比,可以更加自由地发表、交流各种观点,可以非常及时地,广泛、深入地,具体讨论、辩论各种重要,但常有尖锐分歧。
办好网上论坛,就能非常及时的使许多创新的思想、观点得以交流、展示。
使正确的东西能更加明确、丰富的普及和传播;使错误的理念能得到及时批判、纠正,而不致造成泛滥、毒害;使真理,越辩越明,更加深入发展。
因而,网上论坛是世界上真正最为民主、自由的乐土,是贯彻执行“百花齐放、百家争鸣”方针的有力工具,是培育、发展各种创新思想的重要苗圃。
因为作者本人喜欢体育运动,尤其对NBA篮球情有独钟,于是开发了这个简单的关于NBA篮球的论坛,既兴趣所向,又锻炼了自己的专业能力。
第1.1节课题来源
随着网络的流行与发展,网络逐渐成为人们发表言论的主要部分。
以网络为载体最大程度地利用网络资源的共享、方便、快捷等优点,实现人们的言论自由。
根据我们在一起论坛的基本流程,我们永远在一起论坛有以下两个模块组成:
后台管理员模块:
实现管理员对论坛的维护。
前台用户模块:
实现用户对个人发表言论的增删改查,发表言论,和对其他用户详情的查看。
第1.2节国内外研究现状和发展趋势
我国网上论坛随着经济的迅猛增长,电脑的日益普及,网上论坛已经越来越受到广大网名的青睐,网上论坛的功能也越来越强,国外也是如此。
第1.3节开发目的
一是为提高软件编写人员的实际应用能力;二是为了和广大球迷相互发表自己的意见和看法,以及对自己所爱球队的见解。
本需求的编写目的在于研究网上论坛的开发途径和应用方法
第2章开发工具的介绍
本系统主要是针对大学生设计的,考虑到本系统的性能要求,和现有的条件,我们选择了windowsxp作为开发、测试和运行的平台。
系统采用MicrosoftOffice中的sqlsever2005设计数据库,并使用当前优秀的开发工具visualstdio2008,它有着最为灵活的数据库结构,对数据库应用有着良好的支持。
系统开发和运行环境
系统的开发环境:
操作系统:
Windowsxp/7平台。
文件系统:
FAT32
系统最低运行环境:
操作系统:
Win32系统NT平台系列;
内存要求至少在128MB以上。
推荐使用环境:
操作系统:
Winxp或Win7;
文件系统:
NTFS
内存要有512MB以上,并且装有visualstudio2008,SQLServer2005
第3章需求分析与可行性分析
本章的主要内容是对系统进行可行性分析和需求分析。
第3.1节可行性分析
(1)技术可行性和方法
ASP所做的程序是当今流行且日益成熟的技术,而本人作为开发者,学过ASP、C、C++、C#、JAVA等编程语言,有一定的编程经验。
学过SQLSERVER数据库语句及一些基本操作。
系统为票务管理系统,我将尽最大努力,结合自己水平及实际需要,将自己所学到的知识应用到本系统的设计之中,并将借此进一步学习C#技术的性能提升、代码安全、控件设计及面向对象程序的设计思想等。
依据当前所掌握的技术与学习进度而言,完全有能力实现该系统,技术上是可行的。
(2)经济可行性
系统所需的开发环境是要有一台能够联网的计算机,并安装了Windowsxp的操作系统;所安装的应用软件为VS2008和SQLSERVER2005数据库。
而本人已经有了计算机,具有Windowsxp的操作系统,并且SQLSERVER2005已安装,是完全免费的;而所需的参考资料大多都是在网络上找和在图书馆借书,这些消费很小。
因此在经济上是可行的。
(3)操作可行性
本网站论坛以操作简单,功能完善,运行速度快,本着一切为用户着想作为其设计目标,本系统主要为大学生用,具备一定的计算机基础知识,在计算机操作方面不会存在问题。
因而用户操作上具有可行性。
第3.2节需求分析
利用计算机实现自动的理势在必行。
对于大学生来说,利用计算机互相交流,促进同学之间的关系。
而且利用计算机进行管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点.例如:
查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事管理的效率,也是科学化、正规化管理,与世界接轨的重要条件。
(1)系统的功能需求
本网上论坛系统需要在.net3.5的环境下配置运行,具有SQL数据库的简单配置。
(2)系统的性能需求
1、运行环境
Server要求内存256以上,cpu2.0GHz以上.Clinet内存128以上,cpu奔腾
以上。
2、支持软件
操作系统windos系统、数据库管理系统:
SQL2008数据库系统。
运行平台:
visualstudio2005/2008。
(3)系统的数据流图
数据流图(DFD,dataflowdiagram)是描述数据处理过程的有力工具。
数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
数据流图的基本图形元素有4种:
→:
箭头,表示数据流;
〇:
圆或椭圆,表示加工;
═:
双杠,表示数据存储;
□:
方框,表示数据的源点或终点。
本系统的数据流图如图3·1所示:
浏览
登陆登陆
登陆结果登陆结果
系统维护用户操作
维护结果操作结果
图3·1网上论坛系统数据流图
第4章总体设计
上章对系统进行了需求分析和可行性分析,证明此系统完全可行,这章就对系统的总体设计通过图文并茂的形式进行介绍。
第4.1节数据库设计
(1)SQLServer关系数据库简介[3]
1、SQLServer是由Microsoft开发和推广的关系数据库系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。
2、关系数据库(RDBMS)管理系统功能:
①维护数据库数据之间的关系;
保证数据存储的正确性;
③当出现系统故障的时候,将所有数据恢复到能够保证一致行的某种状态
3、RDBMS:
SQLServer,Oracle,DB/2,Sybase,Informix
4、Non-RDBMS(File-based):
Foxpro,Access
(2)SQLServer特点:
①与因特网的集成:
SQLServer的数据库引擎全面支持XML(ExtensiveMarkupLanguage,扩展标记语言),能使用户很容易地将数据库中的数据发布到Web页面上。
②可伸缩性与可用性:
可跨越从运行Windows95/98的膝上型电脑到运行Windows2000的大型多处理器等多种平台使用。
另外,对联合服务器,索引视图等的支持,使得SQLServer企业版可以升级到最大Web站点所需的性能级别。
③企业级数据库功能:
SQLServer分布式查询可以引用来自不同数据库的数据,而且这些对于用户来说是完全透明的;分布式数据库将保证任何分布式数据更新时的完整性;复制可以使我们能够维护多个数据复本,这些用户能够自主地进行工作,然后再将所做的修改合并到发布数据库;SQLServer关系数据库引擎能够充分保护数据完整性,还可以将管理并发修改数据库开销到最小。
④易于安装,部署和使用:
SQLServer由一系列的管理和开发工具组成,这些工具使得在多个站点上进行SQLServer的安装,部署,管理和使用变得更加容易。
开发人员可以更加快速地交付SQLServer应用程序,而且只需要进行最少的安装和管理就可以实现这些应用程序。
⑤数据仓库:
数据仓库是SQLServer中包含的用于分析取和分析汇总数据以进行联机分析处理的工具。
这个功能只在Oracle和其他更昂贵的DBMS中才有。
SQLServer新特性:
全面扩展了SQLServer7.0的性能,可靠性和易用性。
增加了一系列的功能,具体如下:
①在关系数据库方面的增强
②图形管理增强
③增强的联合数据库服务器
SQLServer工具和实用程序:
1、企业管理器2、服务管理器3、查询分析器4、事件探查器
5、导入和导出数据6、服务器网络使用工具7、客户端网络使用工具8、联机帮助文档
(2)SQLServer数据库系统有关开发的特点[4]
①.NET框架主机
使用SQLServer2005,开发人员通过使用相似的语言,例如微软的VisualC#.NET和微软的VisualBasic,将能够创立数据库对象。
开发人员还将能够建立两个新的对象——用户定义的类和集合
②.XML技术
在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个重要的标准。
SQLServer2005将会自身支持存储和查询可扩展标记语言文件。
③.ADO.NET2.0版本
从对SQL类的新的支持,到多活动结果集(MARS),SQLServer2005中的ADO.NET将推动数据集的存取和操纵,实现更大的可升级性和灵活性。
④.增强的安全性
SQLServer2005中的新安全模式将用户和对象分开,提供fine-grainaccess存取、并允许对数据存取进行更大的控制。
另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。
⑤.Transact-SQL的增强性能
SQLServer2005为开发可升级的数据库应用软件,提供了新的语言功能。
这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT,APPLY,ROW_NUMBER和其他数据列排行功能等等。
⑥.SQL服务中介
SQLServer2005为开发可升级的数据库应用软件,提供了新的语言功能。
这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT,APPLY,ROW_NUMBER和其他数据列排行功能等等。
⑦.通告服务
通告服务使得业务可以建立丰富的通知应用软件,向任何设备,提供个人化的和及时的信息,例如股市警报、新闻订阅、包裹递送警报、航空公司票价等。
在SQLServer2005中,通告服务和其他技术更加紧密地融合在了一起,这些技术包括分析服务、SQLServerManagementStudio。
⑧.Web服务
使用SQLServer2005,开发人员将能够在数据库层开发Web服务,将SQLServer当作一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。
⑨.报表服务
利用SQLServer2005,报表服务可以提供报表控制,可以通过VisualStudio2005发行。
上述九个方面构成了数据库系统的主要特征。
第4.2节系统逻辑模型
E-R图是直观表示概念模型的工具,它有四个基本成分:
◆矩形框,表示
实体类型(考虑问题的对象)。
◆菱形框,表示联系类型(实体间的联系)。
◆椭圆形框,表示实体类型和联系类型的属性。
对于关键码的属性,在属性名下划一横线。
◆直线,联系类型与其涉及的实体类型之间以直线连接。
1
111
N
NN
1
图4·1总体网上论坛管理系统E-R图
图4·2是网上论坛网民浏览E-R图:
NM
N
M
图4·2网上论坛网民浏览E-R图
图4·3是网上论坛管理员E-R图:
1
N
1
1
N
N
N
N
N
M
图4·3网上论坛管理员E-R图
图4·4是网上论坛注册用户E-R图:
NM
N
1
M
1
N
M
图4·4网上论坛注册用户E-R图
第4.3节系统逻辑结构设计
表4·1为论坛管理员的属性。
此表中包含属性为:
AdminID号,AdminName管理员名,和登陆密码。
表4·1论坛管理员信息表
表4·2为论坛注册用户信息的属性。
此表中包含属性为:
UserID号,UserName用户名,UserSex,Userpaw密码等。
表4·2论坛注册用户信息表
表4·3为论坛版块信息的相关属性。
此表中包含属性为:
ModueID号,ModuleName版块名称和对应的发表时间ModuleDate。
表4·3论坛版块信息表
表4·4为论坛帮助信息的相关属性。
此表中包含属性为:
HelpID号,HelpNmae帮助名称和对应的帮助内容HelpContent。
表4·4论坛帮助信息表
表4·5是论坛回帖信息的相关属性。
此表中包含属性为:
RevertCardID回帖号,CardID帖子号,回帖内容以及Date时间。
表4·5论坛回帖信息表
表4·6是论坛帖子信息的相关属性。
此表中包含属性为:
CardID帖子号,UserID号,ModueID号,CardName帖子名称,CardContent内容以及CardIsPride(是否是精华帖)等。
表4·6论坛帖子信息表
第5章详细设计与具体实现
本章为了使用户更直观的对系统进行了解,主要介绍了一些模块的界面、功能及代码。
第5.1节登陆模块界面
首先,为论坛管理员和注册用户都设置了相应的登陆密码,为的是确保论坛的数据不会被非法修改,要求正确的输入用户名和密码。
如图5·1。
如果输入的用户名,密码以及用户ID正确则进入论坛,否则该论坛系统就会提示你输入用户名或密码错误。
点击确定按钮则系统要求重新输入。
以免数据被不明原因破坏和篡改,而造成无法估计的损失。
图5·1登陆界面
登陆界面主要代码[5]:
publicpartialclassBackDesk_Login_Login:
System.Web.UI.Page
{
DataConmyCon=newDataCon();
ValidateCodecode=newValidateCode();
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidbtnLogin_Click(objectsender,EventArgse)
{
Session["UserID"]=txtUserID.Text;//给DeliverCard.aspx页传值
Session["Name"]=txtUserName.Text;//给Index.aspx页传值
{
SqlConnectionsqlconn=myCon.getCon();
sqlconn.Open();
SqlCommandsqlcom=sqlconn.CreateCommand();
if(cbAdminLogin.Checked==true)
{
sqlcom.CommandText="selectcount(*)fromtb_AdminwhereAdminID='"+txtUserID.Text
+"'andAdminName='"+txtUserName.Text+"'andAdminPwd='"+txtPassword.Text+"'";
intcountAdmin=Convert.ToInt32(sqlcom.ExecuteScalar());//获取SQL语句的值强制转换成数值类型
if(countAdmin>0)
{
Page.Response.Redirect("AdminLogined.aspx");
}
else
{
Response.Write("
');location='javascript:
history.go(-1)'");
return;
}
}
else
{
sqlcom.CommandText="selectcount(*)fromtb_UserwhereUserID='"+txtUserID.Text
+"'andUserLoginName='"+txtUserName.Text+"'andUserPwd='"+txtPassword.Text+"'";
intcountUser=Convert.ToInt32(sqlcom.ExecuteScalar());
if(countUser>0)
{
Page.Response.Redirect("UserLogined.aspx");
}
else
{
Response.Write("
');location='javascript:
history.go(-1)'");
return;
}
}
sqlconn.Close();
}
}
第5.2节注册模块界面及功能
如果浏览网民想发表自己的看法或者是评论相关的帖子,就要点击注册按钮,进入注册界面来完成相关的注册手续,如图5·2所示:
图5·2注册界面
注册界面主要模块代码:
publicpartialclassFrontDesk_Login_UserRegister:
System.Web.UI.Page
{
DataConmyCon=newDataCon();
DataOperatesqlBind=newDataOperate();
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidbtnRegister_Click(objectsender,EventArgse)
{
stringsqltest="select*fromtb_UserwhereUserID='"+this.txtUserID.Text+"'";
SqlConnectionsqlconn=myCon.getCon();
sqlconn.Open();
SqlCommandsqlcom=newSqlCommand(sqltest,sqlconn);
SqlDataReaderread=sqlcom.ExecuteReader();
read.Read();
if(read.HasRows)
{
if(this.txtUserID.Text.Trim()==read["UserID"].ToString().Trim())
{
Response.Write("
return;
}
}
stringsqlstr="insertintotb_User"
+"(UserID,UserLoginName,UserSex,UserPwd,UserName,"
+"UserQuePwd,UserAnsPwd,UserTel,UserEmail,UserAddress,UserPostCode,UserQQ)"
+"values('"+txtUserID.Text+"','"+txtLoginName.Text+"','"+ddlSex.Text
+"','"+txtPwd.Text+"','"+txtTName.Text+"','"+txtQuePwd.Text
+"','"+txtAnsPwd.Text+"','"+txtTel.Text+"','"+txtEmail.Text
+"','"+txtAddress.Text+"','"+txtPostCode.Text+"','"+txtQQ.Text+"')";
sqlBind.DataCom(sqlstr);
Response.Redirect("SuccessReg.aspx");
}
protectedvoidbtnTest_Click(objectsender,EventArgse)
{
stringsqlstr="select*fromtb_UserwhereUserID='"+this.txtUserID.Text+"'";
SqlConnectionsqlconn=myCon.getCon();
sqlconn.Open();
SqlCommandsqlcom=newSqlCommand(sqlstr,sqlconn);
SqlDataReaderread=sqlcom.ExecuteReader();
read.Read();
if(read.HasRows)
{
if(this.txtUserID.Text.Trim()==read["UserID"].ToString().Trim())
{
Response.Write("
return;
}
}
else
{
Response.Write("
}
read.Close();
sqlconn.Close();
}
第5.3节密码找回界面及功能
如果已经注册的用户因不小心而忘记了密码,则可以通过单击“找回密码”按钮进入密码找回界面,回答正确的密码提示问题来找回密码。
如图5·3所示:
图5·3密码找回界面
密码找回界面主要代码:
public
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 论坛 系统 课程设计