新闻发布系统毕业设计_第1页
新闻发布系统毕业设计_第2页
新闻发布系统毕业设计_第3页
新闻发布系统毕业设计_第4页
新闻发布系统毕业设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、兴 义 民 族 师 范 学 院 毕业设计论文题 目:web php 新闻发布系统的设计专 业:现代教育技术指导老师:王波班 级:2009级学 号:200930812012学生姓名:郭焕军时 间:2012年6月独 创 性 声 明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:日期:关于论文使用授权的说明本论文作者完全了解兴义民族师范学院有关保留、使用论文的规定:兴义民族师范学院有权保留并向国家有关

2、部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅,可以将论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文,并且本人电子文档的内容和纸质论文的内容相一致。签名:日 期:指导教师签 名:日期:摘要近年来,互联网技术迅速发展,网络逐渐走进生活。对于传统的传媒方式已经满足不了人们的需求。因此,网络作为传媒的媒介比起传统的媒介更显得出很多优势。它打破了地域限制,更实时快捷直观的得到所要浏览的信息,真正使信息得以共享,从而改变了人们的工作和生活方式。 在互联网上的众多网站中,新闻发布系统不可缺少的一部分。新闻发布系统可以使新闻的内容种类更繁多,新闻发布

3、更开放,用户也可以通过此平台相互交流互动。因此凸显了新闻发布系统的各项优越性。本系统我们采用php编程语言,mysql数据库,apache服务器等开发环境,一个普通的部门级新闻系统兴义民族师范学院计算机科学系新闻发布系统。该系统功能基本趋于完善,例如用户可以对自己的新闻进行发布,浏览其他新闻,对新闻的检索,以及对新闻进行评论。几乎可以满足大部分用户的各项需求,本系统分为前台系统和后台系统。管理员可以对新闻,新闻分类等模块进行分块管理。因此,管理员可以直观快捷的管理网站的各项事务,以便此系统可以正常稳定的实现动态运行。关键词:新闻发布系统,php编程,mysql数据目 录摘要i目 录i第一章 概

4、述11.1实验环境搭配11.1.1动态网页编程语言的比较11.1.2 php简介11.1.3 mysql数据库技术简介21.1.4 php+mysql+apache组合21.2 b/s系统结构及工作原理2第二章 需求分析32.1 设计构思32.2功能设计3第三章 数据库设计53.1 数据库需求分析53.1.1 功能流程53.1.2 需求总结53.2 数据库概念设计53.2.1 数据库实体53.3 数据库逻辑设计73.3.1 表news73.3.2 表 user73.3.3 表 admin83.3.4 表pingjia8第四章 功能模块设计94.1功能模块划分94.2 系统模块功能描述94.2.

5、1 新闻分类浏览模块94.2.2 新闻检索模块94.2.3会员登陆后发表新闻评论模块94.2.4管理员后台新闻发布模块104.2.5管理员后台新闻管理模块10第五章 系统实现115.1新闻发布首页115.1.1 连接数据库的核心代码125.2分类浏览新闻135.2.1 浏览分类浏览核心代码135.3 新闻检索145.3.1新闻检索核心代码155.4 会员用户登录155.4.1会员用户登录核心代码155.5 会员登录后发表评论165.51 发表评论核心代码175.6 新闻发布页面185.6.1新闻发布核心代码195.7 新闻管理页面205.71 新闻修改核心代码225.72 新闻删除核心代码22

6、第六章 系统测试246.1系统测试目的246.2系统测试的方法246.3系统测试246.3.1系统前台测试246.4 系统权限核心代码276.4.1用户标识及权限设置代码27致谢29参考文献30第一章 概述1.1实验环境搭配1.1.1动态网页编程语言的比较动态网页编程的语言有很多种我们以最常用的三种为例它们分别是: php、asp,二者之间的技术性的比较如下:php(hypertext preprocessor)是一种服务器端html嵌入式脚本描述语言。其最强大和最重要的特征就是跨平台,面向对象。它大量地借用了c语言、java等语言的语法, 并有自己的书写规范,简单便于书写程序脚本。php所有

7、的源码都是开源的。使用php是完全免费的,用户可以从php官方站点获得php的源码。因此,使用php可大大的减少开发所用的成本。asp(active server pages),asp的文件就是在普通的html 文件中嵌入vbscript或是javascript脚本语言。当客户请求一个asp文件的时候服务器 就会运行asp中的脚本代码,并转换成标准的html的文件发送给客户端。asp提供了几个非常有用的内部对象和内部组件,利用他们可以轻松地实现表单上传,存取数据库等功能。因此,asp几乎可以实现任何功能。综上可知,asp、php二者各有利弊。但是总体的工作原理大致相同,都是服务器先接受一个请求

8、,然后服务器找到了相应动态网页,接着执行程序的代码生成静态网页,最后将网页发送给客户端浏览器。二者都是面向 web 服务器的技术,客户端浏览器不需要任何附加软件支持。只要一个浏览器就可以完成。 二者中,php的语言优势有很多:安全性高, 支持广泛的数据库,跨平台特性,执行速度快免费,内嵌zend 加速引擎,性能稳定快速。因此,php被很多网格开发者选择学习和使用。1.1.2 php简介php已经成为全球最普及的互联网开发语言之一,php在2004年获得了最佳编程语言的称号,到2010年,php发展一直呈现稳步上升趋势。至今已被2000多万个网站采用。在tiobe世界编程语言排行调查报告中,ph

9、p技术在全球互联网领域的应用将会位居第一。综合分析,我们总结php的优点有:(1)安全性高;(2)支持广泛的数据库;(3)跨平台特性;(4)易学性;(5)执行速度快;(6)模块化;(7)支持面相对象过程。 1.1.3 mysql数据库技术简介mysql 是瑞典的mysql ab公司开发的一个小型关系型数据库系统。它适用于网络开发,其数据库可在因特网上随时共享。mysql功能强大、运行速度快、可靠性高、安全等优点。这就是我们选择mysq数据库的原因。1.1.4 php+mysql+apache组合接下来我们采用php+mysql+apache组合,它稳定性好、功能强大、硬件资源占用小等特点。占用

10、很小的资源却能承受大量用户同时浏览的压力,满足新闻发布系统的需求。mysql支持多线程、多用户的关系数据库管理系统。而且和php一样源代码开放、高性能、跨平台等特性。这套技术也是目前采用php+mysql开发的黄金组合,因此也是我们必选的。1.2 b/s系统结构及工作原理新闻发布系统是基于b/s结构下的web信息系统。客户端只需要安装浏览器,即可通过http协议向apache服务器提出请求,服务器站点收到请求后,解析php文件,然后连接数据库,执行指定的sql语句。查询到的结果后返回到apache服务器。apache服务器根据数据库中返回来的数据生成html文档的形式返回给浏览器。用户的浏览器

11、的到的是个静态的网页。详细的结构如图1-1所示:图1-1 b/s结构原理图b/s结构比c/s有着更好的优势,是对于客户端用户要求低。用户的操作系统只要有浏览器即可。在b/s系统工作中,用户可以通过浏览器向网络上的服务器发出请求。b/s结构使得客户端更简化,甚是简化到比手机还小的终端。大部分的工作都是在服务器上完成。 综上所述,无论从硬件、软件及维护工作等方面权衡,b/s结构都能降低整个网络结构体系的总体成本。因此,我们采用b/s结构进行开发新闻发布系统。第二章 需求分析2.1 设计构思新闻发布系统是一个基于网络的新闻发布和管理的管理系统,它是基于b/s模式的系统,本系统可以几乎完成新闻发布的功

12、能。 随着网络新闻发布系统的使用, 网络充当了一个比电视报纸更重要的新闻媒介的功能。我们对此系统的设计便是实现这个系统功能的前提。 首先是提供一个发布的功能和新闻分类管理。 其次,实现用户交互,用户可以参加一些问卷调查和对新闻的评论。 最后,要实现对这个新闻发布的综合管理,方便管理员的管理。要实现这些功能我们必须从权限的角度来看,我们规定:游客浏览者进入到新闻发布系统的主页面,可以浏览所有的相关新闻。但是没有任何特殊的特权。 对于已经注册的浏览者(会员)不仅拥有游客浏览者的全部功能,还可以对某个新闻进行发表评论,查看他人的评论等。最后是管理员,他拥有权限最高,他可以管理所有的新闻,以及新闻分类

13、。可以增加和修改新的新闻分类,也可以增加和修改新的新闻内容。2.2功能设计新闻发布系统分为前台和后台两个部分。对于前台操作者来说,系统的前台页面是他们可以看见的部分,所以要求前台的操作尽可能直观方便。 用户打开前台的页面就可轻松地浏览相关新闻,可以进直接对新闻进行查询,直接浏览所查询的相关新闻。同时可以针对新闻的不同分类,浏览不同类型的新闻。 会员用户可以通过登陆界面登陆。 会员成功登陆后,将有评论权限和查看评论权限,当用户浏览一些新闻以后需要对新闻进行评论时,只要进入新闻相应的评论版中添加自己要评论的内容,即可成功添加。同时返回可以继续浏览其他人的评论。前台的基本功能如图2-1所示:前台管理

14、游客(未注册)会员(已注册)浏览新闻搜索新闻查询新闻浏览新闻查看评论发布评论图2-1 前台功能图对于后台管理,管理员可以对整个的网站进行管理。具体来说,在新闻管理中,管理员可以设定和添加没有的新闻分类,以便在前台的网页中显示新闻的分类,同时也可以对已有的新闻分类进行修改。保证网站的动态性。其次,管理员就是对新闻的文章进行综合管理。后台的基本功能如图2-2所示:后台管理添加管理员用删除管理员用户修改管理员密码添加不同类别新闻删除不同类别新闻修改不同类别新闻图2-2 后台功能图第三章 数据库设计数据库设计是新闻发布系统中数据库设计的核心。 数据库设计直接决定新闻发布系统的功能流程和运行系统的效率。

15、因此,下面详细介绍数据库系统的设计。3.1 数据库需求分析3.1.1 功能流程游客浏览主页游客直接点击想要浏览的新闻列表游客选择自己想要浏览的新闻游客返回列表或者返回主页会员登录系统会员浏览新闻会员发表评论会员查看评论会员退出系统3.1.2 需求总结经上述业务流与数据库需求总结,数据库设计如下的数据项:(1)新闻发布:新闻编码、类别编号、题目、内容、附件路径、发布时间、作者、点击次数。(2)会员信息:会员编码、用户名、昵称、登录密码。(3)管理员信息:管理员编码、登录账户、密码。(4)评论信息:新闻id、评论内容、评论人、评论时间。3.2 数据库概念设计3.2.1 数据库实体(1)新闻实体:对

16、于新闻实体我们根据需要对其设计了:新闻编码、类别编号、题目、内容、附件路径、发布时间、作者、点击次数这8个字段。如图3-1所示:新闻编码新闻标题新闻内容类别编码附件路径发布作者发布时间点击次数新闻图3-1 新闻实体图(2)会员实体:对于会员实体我们设计了:会员编码、用户名、昵称、登录密码这个4个字段。如图3-2所示:会员编号用户名用户昵称登录密码会员信息图3-2 会员实体图(3)管理员实体:对于管理员实体,我们根据需求设计了管理员编号、登录账户、密码这个3个字段。如图3-3所示:管理员编码管理员信息登录账号登录密码图3-3 管理员实体图(4)评论实体:对于评论实体我们根据用户需求设计新闻id、

17、评论内容、评论人、评论时间这个4个字段。如图3-4所示:新闻编码新闻内容评价人评价时间评价信息图3-4 评论实体图3.3 数据库逻辑设计3.3.1 表news字段名类型长度是否为空主键外键备注描述newsidint11noyesno+1新闻编号boardint4nonono类别编码newstitlevarchar100nonono新闻标题newscontenttextnonono新闻内容filepathchar200yesnono附件路径newsauthorchar20yesnono新闻作者newsdatedatenonono发布时间dianjiint100nonono点击次数3.3.2 表

18、user字段名类型长度是否为空主键描述ynamechar20nono会员账户yncchar20nono会员昵称ypwdchar20nono会员密码yidint11noyes会员编码3.3.3 表 admin字段名类型长度是否为空主键描述anoint11noyes账户编号anamechar20nono账户apwdchar20nono登录密码3.3.4 表pingjia字段名类型长度是否为空主键描述idint11noyes新闻编号pjnrtext20nono评论内容pjrvarchar20nono评论人datedatenono评论时间第四章 功能模块设计4.1功能模块划分根据新闻发布系统应具有的基

19、本功能以及参考用户对新闻发布系统的要求我们将这个新闻发布系统进行功能模块上的划分,以方便逐个功能的实现。同时用户在使用中也非常方便,直观。因此经过我们反复的分析和设计,我们将这个新闻发布系统分为7大功能模块。详细的功能模块名称如下:(1)新闻分类别浏览模块(包括:图片新闻、热点新闻、媒体新闻)(2)新闻检索模块(3)会员登陆后发表新闻评论模块(4)管理员后台新闻发布、删除、修改等模块(5)管理员后台新闻管理模块4.2 系统模块功能描述4.2.1 新闻分类浏览模块首先浏览新闻是所有用户都具有的最基本的权限,为了方便用户对新闻的快捷浏览,我们设计了新闻的分类浏览功能。用户只要进入新闻发布系统的主页

20、,要想浏览哪一类新闻,只需在首页中的新闻分类的名称上点击,即可弹出要浏览的这一类新闻的所有新闻。并且按照新闻发布的时间的先后顺序来排列所有新闻。在打开的这一类新闻的新闻列表中,用户只需在点击相应的要看的新闻标题,即可快速的浏览此新闻的详细内容。包括新闻的标题,新闻的详细内容,新闻的来源,新闻的发布时间以及点击次数等。因此,为那些喜欢关注哪一类新闻的用户提供了方便。与此同时,此新闻发布系统还副增加了一个新闻浏览的模块。是根据管理员所发布新闻的时间给用户列出最新的新闻。因此,通过这个几块新闻浏览的功能模块可以基本满足不同用户的不同需求。4.2.2 新闻检索模块为了帮助用户快速的找到自己需要的系统消

21、息,本系统设计了一个搜索模块,只要在搜索栏中输入模糊或者详细的新闻标题就可以查询出带有该字段每个字词的相关新闻列表,方面、快捷的帮助用户及时的筛选出信息。4.2.3会员登陆后发表新闻评论模块对于已经注册该网站系统的用户就可以对每条新闻发出评价的信息,这样以来不仅及时的搜集到用户的有关评价信息,而且还增加了系统的交互性。4.2.4管理员后台新闻发布模块新闻发布模块对于新闻发布系统来说是最主要的一个模块。本系统的新闻发布系统模块中发布的信息包括了新闻编码、类别编号、题目、内容、附件路径、发布时间、作者、点击次数。 管理员用户选择相应的发布信息模块,通过后台的新闻发布页面填写相关的内容,然后点击发布

22、新闻,即可将自己的新闻发布出去。新闻发布的过程简单易行,新闻由管理员在后台直接发布,无需验证和批准直接可以在新闻发布系统的主页面上显示最新的新闻内容。4.2.5管理员后台新闻管理模块管理员将新闻发布以后,难免有出错或者需要修改的时候。因此在设计后台的时候针对此需要,我们设计了图片新闻、重要新闻、热点新闻.等7个模块。 此管理模块是对已经发布出去的新闻进行修改编辑或者删除。同时也是新闻发布系统管理新闻的最基本的功能。 此权限也只能是管理员才可以对此进行操作,对于游客身份的用户和已经登录的会员用户则均不可以对此进行操作。第五章 系统实现5.1新闻发布首页如图5-1是新闻发布系统的首页,该页面的功能

23、包括:新闻浏览、新闻检索、会员登录以及管理员专用通道,用户点击相应的链接时会进入相应的功能页面。此新闻发布系统的首页分为除了有以上的链接功能外,还可以根据自己的需要去浏览具体要浏览的那一类新闻,在栏目导航中已经列出分类,点击即可浏览。热门文章的模块是针对新闻的点击次数进行排列,列出关注度最高的新闻。最新文章模块是针对新闻的发布时间进行排列,列出最新发布的新闻。图5-1 系统首页5.1.1 连接数据库的核心代码数据库的连接是实现个性功能的前提。在连接数据库的时候,为了防止中文出现乱码的现象,我们在连接数据库的同时对编码进行了指定。统一采用gb2312的中文编码,使得中文乱码现象得到解决。其核心代

24、码如下:1. 5.2分类浏览新闻 根据主页的栏目导航,我们可以点击重要新闻,点击以后弹出以新闻类型为重要新闻的所有相关新闻。如图5-2-1所示的分类浏览新闻页面。如果用户想要查看某条新闻的具体内容,用户只要点击网页中相应的新闻标题就可以浏览到新闻的详细内容。如图5-2-2所示的浏览新闻详细页面。图5-2-1 分类浏览新闻页面图5-2-2 浏览新闻详细页面5.2.1 浏览分类浏览核心代码1. 6. 14. 15. a href=read.php?id= class=gray target=_blank title=  16. 5.3 新闻检索新闻检索可以大大提高新闻的浏览速度

25、,用户查询新闻时只需要在新闻检索栏中输入相应的关键字然后点击查询的,既可以得到相应的新闻页面。如图5-3-1添加一个新闻的关键字,然后再点击查询的按钮。如图5-3-2 得到的查询结果图5-3-1 查询检索页面图5-3-2 查询检索页面5.3.1新闻检索核心代码1. ?php2. $lnk = mysql_connect(localhost, root, ) 3. or die (not connected : . mysql_error(); 4. mysql_select_db(news, $lnk) or die (cant use news : . mysql_error();5. my

26、sql_query(set names gbk);6. $kw=$_getkw;7. $sql=select * from article where title like %.$kw.%; 8. $query=mysql_query($sql);5.4 会员用户登录限制用户的权限,会员用户登录的模块是必不可少的。在正常会员账户和密码都正确的情况下可以正常登录。如图5-4-1会员用户正常登录界面。 图5-4-1 会员用户正常登录界面5.4.1会员用户登录核心代码1. ?php 2. session_start();3. $user=mysql_query(select * from user

27、where yname=.$_postync. and ypwd=.$_postpwd.);4. if(mysql_num_rows($user)!=0)5. 6. echo alert(恭喜您!登录成功!);window.location.href=index.php;7. 8. if(!isset($_sessionyh_name)9. 10. $yuser=mysql_fetch_row($user);11. $_sessionyh_name=$yuser0;12. $_sessionlx_name=$yuser1;13. ? 5.5 会员登录后发表评论会员用户登录以后才可以对新闻进行发

28、表评论和查看新闻的所有评论。如下图5-5-1是新闻发表评论的主页面。用户可以对新闻进行评论,写好评论内容以后点击发表评论既可以成功发表评论。如图5-5-2编辑评论页面 。当评论信息成功发布以后,点击查看即可查看到用户的评论信息,如图5-5-3所示所有的评论信息。 图5-5-1 发表评论主页面图5-5-2 编辑评论页面图5-5-3 查看评论信息页面5.51 发表评论核心代码1. 7. else8. 9. mysql_query(insert into pingjia(id,pjnr,pjr,date) values(.$pingid.,.$_postpingjia.,.$yhm.,.date(y

29、-m-d).););10. echo alert(评价成功!);window.location.href=pingjia.php; ;11. 12. ?5.6 新闻发布页面如下图5-6是本新闻发布系统的新闻发布页面,新闻的id数据库自动累加用户不需要对其进行编号。发布时间的也不需要用户添加,系统会帮你自动添加发布新闻的时间。新闻标题、作者、新闻来源、新闻类型以及新闻内容等则是用户必须编辑的内容,用户填写好要发布的新闻后点击发布,新闻成功发布后,系统将给与成功发布的信息提示。图5-6 新闻发布页面5.6.1新闻发布核心代码1. ?php 504857600)15. 16. echo 文件过大,请

30、上传不大于100m的文件!;17. 18. else19. 20. echo 文件大小: . ($_filesupfilesize / 1024) . kb;21. echo 临时目录: . $_filesupfiletmp_name . ;22. 23. if (file_exists(./imgfiles/ . $_filesupfilename)24. 25. echo $_filesupfilename . 已经存在,无需重复上传。 ;26. 27. else28. 29. move_uploaded_file($_filesupfiletmp_name,./imgfiles/ . $

31、_filesupfilename);30. echo 目录保存位置: . ./imgfiles/ . $_filesupfilename;31. 32. 33. $path=imgfiles/ . $_filesupfilename;34. mysql_query(insert into news(newsid,board,newstitle,newscontent,filepath,newsauthor,newsdate) values(null,1,.$title.,.$abc.,.$path.,.$author.,.$time.);35. 36.37. echo alert(已经成功插入

32、一条记录。);window.location.href=addnews.php;38. mysql_close();39. 40. ?5.7 新闻管理页面管理员用户登录以后点击新闻管理链接时,出现如图5-7-1所示的页面。此页面给予的权限是最高的,可以修改新闻和删除新闻,浏览需要修改的新闻内容点击操作选项:修改新闻和删除新闻。如果选择修改新闻则跳转到新闻修改页面。如图5-7-2新闻修改页面。如果用户是选择删除的操作,即点击要删除新闻所在行的删除操作,提示删除成功。如图5-7-3删除成功提示。成功删除以后,用户会重新回到此管理页面,所删除的新闻已经删除,浏览不到刚才删除的新闻内容。图5-7-1

33、后台管理页面图5-7-2 新闻修改页面5.71 新闻修改核心代码1. 2. ?php3. 4. else 5. 6. mysql_query(update news set newstitle=.$_posttxt_newstitle.,newscontent=.$_posttxt_newscontent.,newsauthor=.$_posttxt_newsauthor.,newsdate=.$_posttxt_newsdate. where newsid=.$_getmodid);7. echo alert(公告栏目修改成功!);window.location.href=modifynews.php;8. 9. 10. ?5.72 新闻删除核心代码1. ?php2. $id=$_getid;3. $sql=delete from news where id=$id; 4. if(mysql_query($sql) 5. echo(alert(删除成功!6. );window.location.href=index.php;);? 图5-7-2 新闻删除成功提示图5-9-1 新闻分类管理页面第六章 系统测试6.1系统测试目的本网站将会是企业内部网站中的子网站,要想实现一个完整的大型网站,网站系统测试是必须要完成的重要工作。网站系统测试就是要根

温馨提示

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

评论

0/150

提交评论