web课程设计网络论坛系统_第1页
web课程设计网络论坛系统_第2页
web课程设计网络论坛系统_第3页
web课程设计网络论坛系统_第4页
web课程设计网络论坛系统_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

\o"CurrentDocument"设计总说明 3\o"CurrentDocument"系统分析与设计 4一、需求分析 4二、功能设计 4三、数据库设计 4√∙\o"CurrentDocument"系统实现 7一、论坛浏览 7\o"CurrentDocument"二、用户使用 12\o"CurrentDocument"三、管理员使用 17\o"CurrentDocument"心得体会 20【参考文献 20【%|设计总说明一、课程设计的意义:作为《web程序设计》课程的延伸,在学生完成y《web程序设计》课程的理论学习后,安排的课程设计,旨在提高学生Web程序开发水平,培养学生网络编程的能力。二、设计内容设计一个网络论坛系统。三、设计要求?系统功能:1、注册新用户:新用户填写注册表单,包括用户姓名、密码、联系方式等信息;如果输入用户名已被注册过,系统提示用户更改自己的用户名。2、用户登录:输入用户名和密码;若用户输入有误,系统将提示错误。3、用户发表帖子;成功登录的用户可以发表帖子。4、浏览帖子:成功登录的用户可以浏览其他用户发布的帖子。5、用户注册信息修改:用户可以修改自己的注册信息。6、用户退出登录:成功登录的用户可以使用该功能退出论坛系统。[(系统分析与设计一、需求分析开发一个论坛系统,首先需要确定论坛的功能是什么,也就是用户想要的论坛所能做的工作。用户使用论坛是按照一定得流程来进行的:用户注册登录进入论坛,就某个话题展开讨论,通过发帖功能发布新的话题,通过回帖的功能回复已有的话题,通过搜索查找已有的话题;管理员要管理论坛,系统需要具有的功能管理注册的用户,管理帖子。这样的流程就决定了论坛所应具有的功能,路摊流程图如下:通过上面的分析,总结论坛的功能有以下几项:论坛版块列表;浏览帖子;发帖回帖;搜索帖子;删除帖子;用户注册;用户登录;控制用户权限;修改注册信息;管理用户。论坛一般存在两种用户,注册用户和管理员。用户的权限是向下覆盖的,即上级权限包含下级权限,管理员的权限是上级权限。论坛系统的用户浏览信息功能,是用户讨论问题的平台,发帖、浏览。回帖一直贯穿用户的整个活动。同时又有论坛系统的帖子管理是管理员在帖子浏览时进行的,只是一般用户没有权限做这些动作。二、功能设计从需求分析可以找到,论坛功能分为用户使用各基本功能和管理员管理的功能。论坛系统包括以下主要功能:(1)|注册登录功能:用户注册,登录以及修改个人注册信息;((2)3)浏览功能:用户浏览版块,查看帖子;(4)发帖回帖功能:用户发帖、回帖;(5)帖子管理功能:管理员删除帖子。三、数据库设计1.概要设计:通过对系统进行的需求分析和系统功能的确定,规划出系统中使用的数据库实体对象分别为用户实体、管理员实体、发帖实体、回帖实体。因此bbs论坛系统的E-R模型图为:2.详细设计(一)设计表将E-R图转换为关系模型一般遵循如下原则:(1)一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。(2)一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。(3)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。@(4)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。根据上述原则设计的数据表如下:①用户实体:用户(用户名、密码、性别、年龄、邮箱、地址、图像、电话)②管理员实体:管理员(姓名、密码)③发帖实体:发帖(发帖人、编号、主题、内容、时间、浏览次数、回帖次数)④回帖实体:回帖(编号、主题、内容、回帖时间)(二)设计数据字典数据字典:bbs论坛系统会涉及大量的静态数据,如发帖主题、发帖内容、发帖时间、用户年龄、用户性别、用户地址等,这些数据,其数据的组织结构基本一致,现为该系统设计四个数据字典:用户字典、管理员字典、发帖字典、回帖字典。}用户字典USerna:属性名称属性类型是否可以为空约束含义USeJnameVarChar2(30);NOTNULL用户名passwordVarChar2(20)NOTNULL密码|SeXnumber(1)NOTNULL只能为0和1-性别agedateNULL(年龄userfaceVarChar2(6)NULL图像email'VarChar2(30)NULL邮邮箱addressVarChar2(20)NULL/地址telVarChar2(11)NULL-电话管理员字典gib:属性名称。属性类型是否可以为空约束含义glvarchar2(20)NOTNULL主键"姓名PWvarchar2(20)NOTNULL-密码发帖字典:属性名称l'......属性类型是否可以为空约束含义art_idnumberNOTNULL-主键—编号user_namevarchar2(20)NOTNULL发帖人authorvarchar2(20)【NOTNULL-主题contentClboNOTNULL内容、issue_timedateNull发帖时间view_timesnumber-NullI浏览次数reply_timesnumberNull回帖次数回帖字典:属性名称属性类型是否可以为空约束含义re_idnumberNOTNULL~-编号authorVarChar(20)NOTNULL主题contentblobNOTNULL内容re_timedateNOTNULL\回帖时间系统实现一、论坛浏览1、进入主页面琴幻体育论坛百「:L=,v.HBA∣^-□r÷ nl⅛.∣∑.∙!最新实况律运走登录论坛■用户注电..营理员置裁.用户名 空旧 '⅛捶索帖子X.WU.1咕Iff⅛»I7二八百里国和月•笑+匕书♦÷Γ--⅛•三姮首号♦∙∣FT二*TlHH1肌.邦杷西不U对手但土在邛非I.的伙

tt者由牙舌「卜星五二口〜年罗二.-第t二?!日首在接受爆旅采访时表不,触和梅西之间祝有对近,地不若里拿自己罪梅西作计比。也同时贵赭了里里甘日队京,夷格兰队的士:是欲贴Ehot!If⅛主题点击数-.2U1∣⅛文圣心餐展寿堆出E9据⅛ra牙长蝴>E月13日报道,在南非世界杯上,Λ4Π面是在全企曲萄牙乩的C•罗和阿桂廷队的粕同则底谁才是最佳,媒体也为41件.r£T耳FY:=壬•.:?.;∙"I芭=,"蒋比较对息川,⅛⅛j-≠⅛t⅞⅛ffi⅛S看作对手,相应电I≠⅛认为他是犯事业上的2-虫火箭的男儿fP⅛T也可以幽卡面占首页03-我是■-;F1.'E?世伴.他是一个佳大『此匚,,世.=.是⅛m■/雄Ml=已全方鞋也茎浮他忖的一样,‘当期斤梅酉和吕尼在刚刚结束的第一场小组赛中的表现时-匚舞⅛子了现鼠友和昔日队哀同样的黄场."我认为.里跑英格主乱注脩在at.斯根廷乱力了,但是我竟福由品的表现瞅梅西一伴出笆・我格芷αs⅛f]他的一胖出色*如果我f∣的队伍8婚提成一团,坪也我川将套走的更远.郝*此花省世心,榭π的队伍现在密⅛t⅛κ*"地到南非&⅛VUM∣Ht4⅛ΛW4),C密麦瑞庭场里的生音的前段mτ球民婀载蚱*"长期明⅛3⅛螺任丽t员。尾管我力都不喜败,怛是我力期颁画时U才R?岫世徉的赛场里提中精力,但是我11颂3,D‰"4、朝雅,这一刻中国足年为RT=ii∣MS.疏军版F兄¥•33⅞,朝鲜甘巴西上半场较距26,卡只刻寒目人悟我力12耳上戢外人杖七MVPjtt决虔之所It出β-第均科堆在亭用业生混百TP

国打苜品12排版说明:横栏为导航栏,用户可以选择想去的页面;再下一栏为用户登录栏,方便用户登录;左边竖栏为活跃发帖人排行,根据发帖人的发帖数来降序排序;右边一栏为为热门帖子按浏览数降序排序,方便用户看到最好的帖子。并且帖子被点击一次就会自动增加一次点击数。贴吧:此为方便用户浏览所有的帖子。可以按照时间升降和浏览数升降排序。效果图如下:才幻体育论坛-TiL戴;NBA尊"WI和手U壬!π-≡贴吧的I来登录论坛.,用户注班,育理员受录用户包 密码 鲤投叶加限柞卉^7 I;r,JS'所有帖子发帖时间发L•11、朝鲜对巴西上半场螭2010-06-17DD.OO.OO.O雪山妖姬2S22O1O-Oe-1iToiMO:D0.O天山童蜷6233、卡品罗I德国人怕我们2O⅞-O6^17D⅛OO∙D0O在水―1方124、玩军士的兄弟2010-06-1500:00:00,0・小如33::5,2010⅜⅛篮乙镒联赛展望2O1O-O6-1⅛⅛⅞0懿回首令日9h6、希之「FT=E」可I.土」,.,.散田后百几2010-06-1300:00.00.0笑璇舟官SS7、我是小见2010-06-1βθj.0125.0,卜!.:31工朝鲜.这一刻中国足球为你流泪2θTθ-Q6-16D⅛D00八百里风和月465口冷∙γ⅛z后二十号3y之三2010-06-15DD⅞00.0佐助US鸣A.1至~2~.⅛t∣c∣JtL!≡SrleMapFrIvaGFloHbCorrtsUL⅛、代码实现如下:<center><formaction=""method="post"name="PaidUi”><tableWidth="900"border="0"cellspacing="0"bgcolor="#CCCCFF"><tr><tdWidth="818"XdiValign="right"><selectname="paixu"><optionVaIUe="0">按时间降排序</option>O<optionVaIUe="1">按时间升排序<∕option><optionVaIUe="2">按浏览降排序<∕option><optionVaIUe="3">按浏览升排序<∕option><∕select><∕diV><∕td><tdWidth="78"><diValign="center"><inpUttype="sUbmit"name="ok"VaIUe="浏览"/></diV></td>></tr></table><tablewidth="900"border="1"cellspacing="0"bordercolor="#999999"bgcolor="#CCCCCC"><tr>tdWidth="500"XdiValign="center">标题<∕diV><∕td>tdWidth="175"bordercolor="#CCCCCC"><diValign="center">发帖时间</diV></td>tdWidth="125"bordercolor="#CCCCCC"><diValign="center">发帖人</diV></td>tdWidth="50"><diValign="center">点击数<∕diV><∕td>tdWidth="50"><divalign="center">回帖数<∕div><∕td><∕tr>所有帖子<%Stringpx=("paixu");try{ConnectionCon=(Url,user,password);;Statementst=();ResultSetrs=null;Stringsql="selectuser_name,author,issue_time,view_times,reply_timesfromarticles_bbs”;if(px==null);elseif("0"))sql=sql+“orderbyissue_timedesc";elseif("1"))sql=sql+"orderbyissue_time”;)elseif("2"))sql=sql+“orderbyview_timesdesc";elseif("3"))sql=sql+"orderbyview_times”;rs=(sql);inti=0;while()){ i++;》("<tr><td><divalign="+"left"+"><ahref="+"id="+”>"+i+”、"+(2)+"</a></div></td>");("<td>"+(3)+"</td>");("<td><ahref="+"id="+">"+(1)+"</a></td>");("<td>"+(4)+"</td>");("<td>"+(5)+"</td></tr>");}();-}CatCh(SQLEXCeptionel){(el);}%></form></table>浏览帖子:该页面主要显示每个帖子的内容和回帖内容以及相应的用户信息,效果图如下:卡恸罗:生国人怕费们恒固用制发工Ln2D1D-DS-17DOOOOQQ瘦主:在本一方性刖女在见肯纳洞⅛F英格当虬之后,英格*体和球员纷纷予以回击,现在三痴军团的主教博卡胤岁也展开了反击:

“其实德国人害怕我们。”在其格金百⅛⅛⅛⅛平美国之后,如肯地尔认为英格兰足球正在憎退,回到了以前田刚长

传冲吊的商单打法。而分居。组和口组的英格兰和德国可能登在四分之一⅛薨就提前曲遇,因此双方已拄提前开

蛤了口事大战.年排24用:雪山彬S性「年龄£50∣J∣⅛1>:2010-06-17ODOOOOOVUvuzuIa:三世尹葡;前扛门”后时间,2010-06-1700:00-000到I内克:英国人怕我们性刖男年M24(代码实现:首先查询该帖子输出贴主的信息,接着查询对应的回帖表循环输出所有帖子;楼主代码:("gb2312");Stringun=newString("id").getBytes("8859_1"));try{Connectioncon=(url,user,password);Statementst=();{("updatearticles_bbssetVieW_times=view_times+1whereauthor='"+un+"'");ResultSetrs=null;Strings;intj;rs=("select,,,extract(yearfromSySdate)-extract(yearfromnl,,,,fromUSerSna,articles_bbswhere=and='"+un+"'");();%><tableWidth="950"height="30"border="0"cellspacing="0">|<tr><tdwidth="741"height="30"><h1><%=un%></h1>回复/<%=(8)%>次,浏览/<%=⑺%>次</td><tdwidth="102"><divalign="center"><inputtype="submit"VaIUe="回帖"name="submit"></div></td><tdwidth="103">'<divalign="center"><ahref="">刷新</a></div></td></tr></table>回帖类似楼主的代码,只是用上了while循环。二、用户使用1、注册梦幻悻青论坛你的头像I||尸泮性别:联系地址I出生日期:

电子邮箱;

三虫言密码:确认密码:<说明:可以点击超链接选择用户喜欢的头像。用户名、密码和电话用了JaVaScript进行限制代码如下:<scriptlanguage="jaVaScript">functioncheck(){if{ 2r9("用户名长度必须在1位到20位之间!");returnfalse;}if alert("电话未填!");#returnfalse;}if{ alert("密码的长度应大于等于6位!");returnfalse;}if{ alert("两次输入的密码不一致!");returnfalse;}}》</script>数据按要求填写后就提交跳转到注册成功页面,该页面主要执行Sql数据插入语句。2、登录用户登录成功效果图如下:珞迎在水一方成员登录,发帖.■退出登录,,用户注册/1&理员登录..用户名密码登录成功后可以出现用户登录状态,并且拥有发帖和回帖的权限以及退出操作。用户状态在切换页面也不会改变。登录代码如下:("gb2312");Stringusername=("user");;Stringpw=("userpw");intk=0;try{Connectioncon=(url,user,password);Statementst=();ResultSetrs=null;rs=("selectuser_name,passwordfromusersnawhereuser_name=+username+);】();inti=();if("user")!=null)k=k+1;if(i==0&&k!=0)("欢迎"+("user")+"成员登录 /"+"<ahref="+""+">发帖</a>/"+"<ahref="+""+">退出登录</a>/");elseif(pw).equals(2))){|("欢迎"+username+"成员登录 /"+"<ahref="+""+">发帖</a>/"+"<ahref="+""+">退出登录</a>/");("user",username);}else("你还未登录论坛/");();}CatCh(SQLEXCeptionel){("你还未登录论坛/");}3、回帖效果图如上浏览帖子哪版,是与帖子一起的,其中用JaVaSCript限制了内容不为空以及用Session对象来确定是否登录来判断有无回帖权利。代码如下:<sCriptlanguage="javasCript">funCtionCheCk(form){if""){#alert("请填写内容!");returnfalse;}}</script><formmethod="post"action=""onSubmit="returncheck(this)"style="MARGIN-BOTTOM:0px">¥<tablewidth="948"border="1"cellspacing="0"bgcolor="#FFFFFF"><TR><TD><divalign="right"》回帖内容:<∕div></TD><TDwidth="753"height="301"><textareaname="content"rows=20cols=80name="content"></textarea></TD>(</TR><TR><TDheight="36"colspan=2align=center><inputtype="submit"Value="回帖"name="Submit"><inputtype="reset"Value="重置"name="B2"></TD>*</TR></TABLE>("gb2312");Stringcontent=("content");if(content!=null){try{,Connectioncon=(url,user,password);Statementst=();ResultSetrs=null;("updatearticles_bbssetreply_times=reply_times+1whereauthor='"+un+"'");rs=("selectart_idfromarticles_bbswhereauthor='"+un+"'");();Stringnum=(1);("insertintoreplies_bbs(re_id,author,repcont,re_time)values('"+num+"','"+("user")+"','"+content+"',sysdate)");)content="";("回帖成功");}CatCh(SQLEXCeptionel){("请先登录");}4、发帖效果图如下:(论坛话题发布主题:内容一丰诂-IlE一全导同样用JaVaSCript限制了内容标题不为空,以及用Session对象获得用户信息,存入数据库;代码如下:<sCriptlanguage="jaVasCript">funCtionCheCk(form){if""){alert("请填写主题!");、returnfalse;}if""){alert("请填写内容!");returnfalse;}…}<∕script><formmethod="post"action=""OnSUbmit="returncheck(this)"StyIe="MARGIN-BOTTOM:0px"><tableborder="0"Width="99%"align="center"cellpadding="2"cellspacing="1"bgcolor="#A4B6D7"><tr><tdWidth="100%"height="25"bgcolor="#999999"CIaSS="font10_5"><divalign="center"><b>论坛话题发布</b></div>$</td></tr></table><tablewidth="99%"border="0"cellspacing="1"cellpadding="2"align="center"><TR><TDwidth="16%"><divalign="right">主题:</div></TD>《<TDWidth="84%"><inputname="author"type="text"size="55"value=""></TD></TR><TR><TDwidth="16%"><divalign="right">⅛容:</div></TD>$<TDwidth="90%"height="300"><textareaname="content"roWs=20cols=80name="content"></textarea></TD></TR><TR><TDheight="35"colspan=2align=center><inputtype="submit"VaIUe="发布话题"name="SUbmit1"><inputtype="reset"VaIUe="全部重写"name="B2">#</TD></TR></TABLE></form>("gb2312");Stringauthor=("author");Stringcontent=("content");,〜DatecurDate=newDate(newformatter=new"yyyy-MM-ddhh:mm:ss");Stringt=(curDate);(t);if(author!=null){try{!Connectioncon=(url,user,password);Statementst=();ResultSetrs=null;rs=("selectmax(art_id)fromarticles_bbs");();intsm=(1)+1;("insertintoarticles_bbs(art_id,user_name,author,content,issue_time,view_times,reply_times)values('"+sm+"','"+("user")+"','"+author+"','"+content+"',sysdate,'0','0')");("发帖成功");,〜}CatCh(SQLEXCeptionel){("发帖失败");}}三、管理员使用1.、管理员登录效果图如下:代码如下:<formaction=""method="post"name="dl”>、<tableWidth="250"border="1"cellspacing="0"><tr>tdWidth="60">管理员:</td>tdWidth="130"XdiValign="left"><inputtype="text"value=""name="gly"SiZe="19"/></div></td></tr><tr>td>密码:</td>td><divalign="left"><inputtype="password"value=""name="pw"SiZe="20"/></div></td>,〜</tr><tr><td> </td><td><inputtype="submit"VaIue="登录"name="gldl"/><inputtype="reset"VaIue="重置"/></td></tr></table><tablewidth="900"height="300"border="0"cellspacing="0"><tr><td> </td></tr></table></form></center>登陆成功则进入管理页面2、删帖效果图如下:[W∣W所有帖子删否标题发帖时间⅛⅛A息.「数=|卜数□1.我是--⅛∖2010-06-1000:00-00.0天山道f⅛623I工希里火箭胴男人们有一天也可降卡霸占首血2010-06-1300:00000第咚三官67j^2010-06-1400:00:00D辘回首号Θ95I∙-lV⅛31√L∙⅛∙2010-06^500:00,00^小总35QJ5.徭约科推奇夺职业生速AIP双打南;MVSr•:、.12~2-ι&朝鲜.这一刻中国足球为你流泪2010-06-16u⅞00.C∙•;江中「.二475I7.朝鲜k•二I半场攻喀?010-06-1700:00:00,0山工”27P-ι1卡Ia岁:速国人怕毡们201O-O6-17o6w0Q.D"在术1方16~2口9∙--b.! 一ZOIO-OS-Igθl^ŋi小旦31可以在单选框上选择要删除的帖子,然后点击删除,刷新后就可以浏览到删除后的剩余的帖子。实现代码如下:<formaction=""method="post"name="sc"><tablewidth="900"border="0"cellspacing="0"bgcolor="#CCCCFF"><tr><tdWidth="818"XdiValign="right”><∕div><∕td><tdwidth="78"><divalign="center"><inputtype="submit"name="ok"VaIUe="删除"∕><∕div><∕td><tdwidth="78"><divalign="center"><inputtype="submit"name="ok"VaIUe="刷新"∕><∕div><∕td><∕tr><∕table><tablewidth="950"border="1"cellspacing="0"bordercolor="#999999"bgcolor="#CCCCCC"><tr>tdwidth="50"><divalign="center">删否<∕div><∕td>tdwidth="500"><divalign="center">标题<∕div><∕td>tdWidth="175"bordercolor="#CCCCCC"><diva

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论