目    录

摘  要

Abstract

第1章  前  言

1.1  研究背景及意义

1.2研究现状

1.3研究内容

第2章  系统开发环境

2.1 HTTP协议

2.2  Apache简介

2.3 B/S结构

2.4 PHP脚本语言

2.5 MySQL数据库

2.6 MVC简介

第3章  需求分析

3.1  需求分析

3.2  系统可行性分析

3.3  项目设计目标与原则

3.4  系统流程分析

第4章  架构设计

4.1  系统体系结构

4.2  数据库实体设计

4.3  数据库表设计

表access_token (登陆访问时长)

表auth (用户权限管理)

表browse_records (浏览记录)

表classification_management (分类管理)

表collect (收藏)

表comment (评论)

表forum (论坛)

表forum_type (论坛分类)

表hits (用户点击)

表notice (公告)

表praise (点赞)

表slides (轮播图)

表system_user (系统用户)

表type (新闻资讯)

表upload (文件上传)

表user (用户账户:用于保存用户登录信息)

表user_group (用户组:用于用户前端身份和鉴权)

第5章  系统实现

5.1 登录

5.2  管理员功能模块

5.3 用户前后台功能模块

第6章  系统测试

6.1  测试目的

6.2  测试方法

6.3  功能测试

6.4  测试结论

第7章 结  论

参考文献

                                                                   摘  要

信息传递是我们认识世界的主要途径,新闻是现代信息传递的主要载体,而互联网则是新闻发布的主要平台,因此可见互联网的传播媒体是加速社会信息化的中坚力量。互联网信息技术作为21世纪的朝阳产业,随着其飞速发展使得新兴的网络媒体在人们心中的地位进一步提高,新闻发布系统作为网络媒体的核心系统,其重要性是越来越重要:一方面,它提供一个新闻管理和发布的功能;另一方面,互联网新闻发布要求实现与普通用户实现交互,用户可以便捷地参入调查以及相关新闻的评论,这一点也是电视,电台等新闻媒体无法实现的。本文所论述的是当下较为流行的动态web网络新闻发布系统,是基于PHP脚本语言,采用MySQL数据库+Windows平台+Apache服务器的开发环境,所实现的一个功能强大的新闻发布管理系统网站。

关键词:新闻发布系统;PHP技术;Mysql数据库

                                                          Abstract

Information transmission is the main way for us to understand the world. News is the main carrier of modern information transmission, while the Internet is the main platform for news release. Therefore, it can be seen that the media of the Internet is the backbone of accelerating social informatization. As a sunrise industry in the 21st century, the rapid development of Internet information technology has further enhanced the status of emerging online media in people's hearts. As the core system of online media, news release system is becoming increasingly important: on the one hand, it provides a function for news management and release; On the other hand, Internet news publishing requires interaction with ordinary users, allowing users to easily participate in surveys and comments on relevant news, which is also impossible for news media such as television and radio to achieve. This article discusses the current popular dynamic web news release system, which is a powerful news release management system website based on PHP scripting language and using the development environment of MySQL database+Windows platform+Apache server.

Key words: news release system; PHP technology; MySQL database

                                              第1章  前  言

1.1  研究背景及意义

在互联网流行之前,人们习惯通过收音机、报纸、电视等媒体来获取新闻资讯,这些.途径都存在着更新慢、主动性低、信息量受限等弊端。而如今随着网络技术的发展,人们这些传统习惯开始改变,上网浏览新闻逐渐成为了大家共同的选择。

与传统媒体相比,通过互联网传播新闻具有实时性高、互动性强、信息量大、节约成本等优势,所以越来越多的人会选择.上网获取新闻资讯,而这种现象无疑是为网站带来了巨大的工作量。在过去大部分网站都是采用静态方式管理页面信息,但随着信息需求量的增大,这种方式很不利于网站管理员的工作。因此为了提高管理工作的效率,我们很迫切的需要开发一个可利用动态技术对网站进行管理的新闻发布系统。

传统的静态网页管理方式需要管理人员手动制作并发布网页,不但工作量大,而且每次更新页面信息时必须中断服务,造成用户暂时无法访问网站,这样的方式无论对于网站还是用户都无法获得良好的体验。然而如果使用网站新闻发布系统对于网页进行动态管理,这些问题都将不复存在。一个功能完整的新闻发布系统能够对网页中需要频繁变更的内容进行管理,例如最基本的功能便是对新闻进行发布、更新、删除等操作,都有系统化、标准化的步骤,并且由于对数据库的引用,在操作过程中页面会动态更新,不会存在服务的中断,使得管理员工作效率更高,为用户提供了更优质的平台,从而也能为网站吸引更多长期用户群。

在互联网技术飞速发展的今天,网站管理工作的质量直接影响到网站的用户体验,使用新闻发布系统正规化、科学化的管理新闻网站,已经成为信息管理技术与世界接轨.的重要条件之一。

1.2研究现状

西方发达国家步入互联网时代的时间较早,国外的新媒体已经由功能单一向初具规模发展,其掌握的相关技术也比较成熟。中国在这方面发展较晚,经历了不断的摸索和实践,目前国内的网络硬件设施基本上已经覆盖了大部分地区,国内的发展重点在于学习先进的互联网技术,使新媒体更好地为人们服务。

在国外,新媒体技术经历了十几年甚至更多年的发展,他们的核心功能基本上已经能够适应社会的飞速发展和人们更高的要求。另外,他们会把客户的实际需求作为最基本的考虑因素,尽量实现易操作高集成化的系统,从新闻的采集工作开始,新闻的提交,审核,修改,发布等各个环节都实现无缝对接。网络新闻会涉及到多领域的实时动态,也可以完成和用户的交互,还可以将传统媒体的文字转化为声音、图像、视频,使用户一目了然。美国的BuzzFeed通过网络从大量新闻博客中搜集新闻,为用户提供最新热门事件;美国有线电视新闻网Cable News Network全天候无休息直播新闻报道,CNN的用户还可以通过评论或电子邮件进行投稿,经编辑审核通过的稿件可在新闻网呈现;英国最大的新闻广播公司BBC的新闻服务BBC News会在各新闻版块显示出最受欢迎领域的最新消息;澳大利亚ABC新闻网站也会特别注重为公众提供最新的实时新闻资讯。

1.3研究内容

新闻发布系统的开发及实现,所需要的工作内容:

(1)首先是确定选题,确定好所要做的系统,并对系统的背景及现在面临的一些问题等进行系统的初步确认。

(2)系统确认完成后,结合系统开发的需求进行确认系统开发所使用的技术,本新闻发布系统的开发使用PHP技术,数据库进行平台的搭建开发,确认好使用的技术进行技术分析,所使用的技术是否可以完成新闻发布系统的实现。

(3)确定好系统使用的技术,进行在线确认系统所划分的用户角色,并且根据用户角色划分确定所要设计的功能模块,对于新闻发布系统的设计主要划分别为管理员和用户二个角色,并所使用的功能模块也相应不同,但是系统的数据库实现的内容是交互的,用户可以随时根据自己的需求进行查看新闻信息,对于系统工作人员可以根据自己的分管内容进行在线信息的处理及操作,管理员获取到所有用户的详细数据信息,并根据需求进行第一时间处理解决。

(4)系统的功能模块确认完成后进行程序及界面的设计,设计完成后,并且通过测试来判断程序是否完善,对于系统测试,需要不同的用户进行不同的内容编辑及提交,及使用不同的测试方式找出程序中存在的漏洞,并对程序出现的漏洞问题进行在线解决处理,如果测试系统没有任何问题时,可以将系统上传进行正式操作使用。

第2章  系统开发环境

2.1 HTTP协议

超文本传输协议(HTTP)作为协作式与分布式的通信协议,其以万维网交换信息作为前提条件。HTTP为IEIF的国际化标准指标,在制定相关标准与实现内,W3C积极参与其中,同时发挥着不可替代的作用。其能够借助超文本标记语言,将文档在服务器与浏览器之间相互传输。HTML作为构架文档的标记语言,这些文档内将包括有关信息的链接,用户仅需要点击其中一个链接就能够访问多媒体对象与图像,同时获得该链接项所具有的附加信息。

2.2  Apache简介

Apache是开发源代码,使用者可根据个人习惯、系统的需求对Apache进行配置;另外对于系统的发布和运行是非常简单的[10],开发人员只需要在开发工具中导入Apache,服务器的配置就算完成了;这是非常适合PHP程序的。对于程序人员开发程序经常可能会遇到乱码的问题,而使用Apache作为服务器,只需要在Apache的安装目录下找到配置文件夹conf下的服务器配置文件server.xml,打开后改动端口号为8080的接收环节与请求处理环节的连接器Connector为相对应的编码,运行项目后,就不会出现中文乱码问题。本系统的设计和实现编码使用的是UTF-8,所以需要在端口号为8080的连接器中设置编URIEncoding="UTF-8"[12] [13]。

2.3 B/S结构

在系统的开发上采用了B/S结构,在B/S结构中,统一采用浏览器,而不需要去开发任何的用户界面,Web浏览器向处理它的Web服务器发送请求,并一步一步地将处理结果返回给客户端。B/S结构主要采用了各种脚本语言和ActiveX技术,降低了系统的开发难度并简化了系统维护以及使用。

B/S结构有如下特点:B/S结构建立在广域网上,不需要专门为其配置硬件环境,比C/S结构的适应范围更强;由于其基于广域网,所以其对安全的控制能力相对较弱;B/S的多种结构要求构造相对独立的函数,这样才能可以更好地重用;B/S结构组成简单,便于对个别构件进行更换,降低了系统的维护成本B/S信息流向与C/S不同,B/S信息流向可变化。

2.4 PHP脚本语言

PHP是在94年由Rasmus Lerdorf创建的一款程序设计语言,其能够在多个平台内应用,具有良好兼容性,进而其凭借自身优势在数据中心、个人PC与科技超级计算机等平台内广泛应用,具有目前最为庞大的开发者专业社群。

PHP可以放在在html里使用,也可以独自使用,它同时也具备有很多种优点,可以讲,Web脚本技术的先驱是PHP。现代编程语言(像C,Java和Perl等)的一些最好的特点都融合在PHP里,Web服务器里的一些配置标准是由PHP、Apache和数据库等的组合在一起的。

2.5 MySQL数据库

MySQL 经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。

针对本文中设计的大学生家教信息服务网在实际的实现过程中,最终选择MySQL数据库的主要原因在于在企业的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的MySQL来对大学生家教信息服务网后台数据进行存储操作。

数据库管理系统的总体结构图如下图所示。

图2-1 数据库组成结构

2.6 MVC简介

MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一且M改变,V应该同步更新。

模型–视图–控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smaltalk - 8Q发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司JavaEE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型–视图–控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。

第3章  需求分析

3.1  需求分析

开发系统的过程中,去调查用户的功能诉求,对需要存在的功能进行需求分析是特别重要的,且对于系统的开发有着实际的意义,设计新闻发布系统通过对用户的需求进行分析,结合实际情况进行开发研究,对用户的所有需求做出一个完整的基本的框架,然后一步一步的完成、实现。需求分析可以为系统的开发提供一个目标,只有按照这个目标进行开发设计,才能进行完整的开发,这样设计出的系统才有使用的意义,才能在竞争激烈的软件市场中生存,才能真正的帮助人们解决问题,提高实际的效率。

3.2  系统可行性分析

3.2.1 技术可行性

本系统采取的是目前应用最广泛的程序进行技术的支持,主要的技术支持是PHP语言,他作为一个相当成熟的语言程序,在众多的软件开发中起着很大作用。而且用PHP语言编辑出来程序可以直接运行,不需要借助其他的翻译器进行翻译。所以在技术方面是完全可以行的。

3.2.2 经济可行性

本项目开发的初衷就是为了节约,因为系统开发的所有过程都是我自己开发的,而且在开发过程使用到的技术也都是市面上常见的容易操作的,所以不需要请专业的人士花资金来进行系统的开发,而且在项目开发的过程中我也学到了更多的知识。开发的这个软件可以在网络中进行免费的下载,对计算机的软硬件没有很高的要求,因此这个项目是非常实惠的,在经济方面是完全可性的。

3.2.3 操作可行性

操作可行性也就是系统的可用性,一个系统的操作是否容易决定着这个系统的使用度,在系统的操作方面的设计我都是采取简洁易懂的方式,操作的整个菜单界面整齐有序,所有的功能都有序的排列,不会出现重叠或者需要转换的现象,用户想要哪方面的操作都可以直接进行操作,所以该系统任何人都可以进行操作,不需要有相关专业的技术这样用户在操作起来就容易很多。

3.3  项目设计目标与原则

1、关于新闻发布系统的基本要求

(1)功能要求:管理员:后台首页、轮播图管)、公告信息管理、交流管理(交流论坛、论坛分类)、系统用户(管理员、系统用户)、模块管理(新闻资讯、分类管理、浏览记录)。

用户权限;前台首页、交流论坛、公告信息、新闻资讯、我的(我的账户、我的收藏、个人中心),后台首页:模块管理(浏览记录)。

(2)性能:因为新闻发布系统管理中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。

(3)安全与保密要求:用户都必须注册、登录才能进入系统。

(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。

2、设计原则

本新闻发布系统采用PHP技术,Mysql数据库开发,充分保证了系统稳定性、完整性。

(1)系统响应效率:由于是新闻发布系统,因此就需要系统的响应效率是非常高的,并且可以支持很多人同时进行系统的使用。

(2)界面简洁清晰:系统界面要简单有序,所有的功能一目了然。

(3)储存性高:因为是新闻发布系统,所以就会在数据库要求上比较严格,信息录入的比较多,而且丰富复杂, 这就需要一个强大的数据库来存放更多的数据和保证数据的时时性。

(4)易学性:系统的设计一定要简单,使得用户使用起来非常好的顺手。

(5)稳定性需求:该系统在使用过程中必须保持稳定,不要出现卡顿、模糊等情况。

(6)稳定性:由于是新闻发布系统,因此系统运行必须要十分的稳定。

3.4  系统流程分析

用户需要拥有属于自己的账号和密码,且必须正确,这样才能顺利登录到系统中。进入网站后,用户可以自行填写健康填报、疫情上报等等。,在自己需要的信息的进行填写,可以直接在系统中进行操作。具体流程如下图3-2所示:

图3-2 用户操作流程图

为了保证系统的安全性,要使用本系统对系统信息进行管理,必须先登陆到系统中。其具体登录流程图如图3-3所示:

图3-3 系统操作流程图

第4章  架构设计

4.1  系统体系结构

新闻发布系统的结构图4-1所示:

图4-1 系统结构

登录系统结构图,如图4-2所示:

图4-2 登录结构图

系统结构图,如图4-3所示:

图4-3 系统结构图

4.2  数据库实体设计

数据库的功能就是对系统中所有的数据进行存储和管理。所有的数据可以在数据库中产时间的进行存储,方便用户的使用。而且所有的数据库中的数据也应该具有一定的共享性,任何的系统可以对一些数据进行使用,同时还应该保持一定的独立性,每一个数据库中的数据都有很强的安全性,可以被很好的存放到数据库,没有进行身份的验证是不能对这些数据进行查看和使用的。数据库的设计需要明确每一个实体之间的联系,系统的E-R图如下图所示::

管理员实体主要存储管理信息包括用户名、密码、角色。管理员信息属性图如图4-5所示。

图4-5 管理员信息实体属性图

新闻资讯实体图如图4-6所示:

图4-6新闻资讯实体图

用户信息实体图如图4-7所示:

图4-7用户信息实体图

4.3  数据库表设计

当新闻发布系统在运行的时候,数据库要能确保自己的独立性,想要哪部分的数据就选择相应的设置选项,对应的数据就会以表格的形式展现出来。当对这一个功能进行设置,他就会与数据库进行连接,会在对话框中弹出相应的数据源。

表access_token (登陆访问时长)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 token_id int 10 0 N Y 临时访问牌ID 2 token varchar 64 0 Y N 临时访问牌 3 info text 65535 0 Y N 4 maxage int 10 0 N N 2 最大寿命:默认2小时 5 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 6 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间: 7 user_id int 10 0 N N 0 用户编号:

表auth (用户权限管理)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 auth_id int 10 0 N Y 授权ID: 2 user_group varchar 64 0 Y N 用户组: 3 mod_name varchar 64 0 Y N 模块名: 4 table_name varchar 64 0 Y N 表名: 5 page_title varchar 255 0 Y N 页面标题: 6 path varchar 255 0 Y N 路由路径: 7 position varchar 32 0 Y N 位置: 8 mode varchar 32 0 N N _blank 跳转方式: 9 add tinyint 3 0 N N 1 是否可增加: 10 del tinyint 3 0 N N 1 是否可删除: 11 set tinyint 3 0 N N 1 是否可修改: 12 get tinyint 3 0 N N 1 是否可查看: 13 field_add text 65535 0 Y N 添加字段: 14 field_set text 65535 0 Y N 修改字段: 15 field_get text 65535 0 Y N 查询字段: 16 table_nav_name varchar 500 0 Y N 跨表导航名称: 17 table_nav varchar 500 0 Y N 跨表导航: 18 option text 65535 0 Y N 配置: 19 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 20 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

表browse_records (浏览记录)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 browse_records_id int 10 0 N Y 浏览记录ID 2 news_headlines varchar 64 0 Y N 新闻标题 3 news_classification varchar 64 0 Y N 新闻分类 4 publishing_author varchar 64 0 Y N 发布作者 5 user_information int 10 0 Y N 0 用户信息 6 user_name varchar 64 0 Y N 用户姓名 7 remarks text 65535 0 Y N 备注信息 8 recommend int 10 0 N N 0 智能推荐 9 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 10 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间

表classification_management (分类管理)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 classification_management_id int 10 0 N Y 分类管理ID 2 news_classification varchar 64 0 Y N 新闻分类 3 recommend int 10 0 N N 0 智能推荐 4 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间

表collect (收藏)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 collect_id int 10 0 N Y 收藏ID: 2 user_id int 10 0 N N 0 收藏人ID: 3 source_table varchar 255 0 Y N 来源表: 4 source_field varchar 255 0 Y N 来源字段: 5 source_id int 10 0 N N 0 来源ID: 6 title varchar 255 0 Y N 标题: 7 img varchar 255 0 Y N 封面: 8 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 9 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

表comment (评论)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 comment_id int 10 0 N Y 评论ID: 2 user_id int 10 0 N N 0 评论人ID: 3 reply_to_id int 10 0 N N 0 回复评论ID:空为0 4 content longtext 2147483647 0 Y N 内容: 5 nickname varchar 255 0 Y N 昵称: 6 avatar varchar 255 0 Y N 头像地址:[0,255] 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间: 9 source_table varchar 255 0 Y N 来源表: 10 source_field varchar 255 0 Y N 来源字段: 11 source_id int 10 0 N N 0 来源ID:

表forum (论坛)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 forum_id mediumint 8 0 N Y 论坛id 2 display smallint 5 0 N N 100 排序 3 user_id mediumint 8 0 N N 0 用户ID 4 nickname varchar 16 0 Y N 昵称:[0,16] 5 praise_len int 10 0 Y N 0 点赞数 6 hits int 10 0 N N 0 访问数 7 title varchar 125 0 N N 标题 8 keywords varchar 125 0 Y N 关键词 9 description varchar 255 0 Y N 描述 10 url varchar 255 0 Y N 来源地址 11 tag varchar 255 0 Y N 标签 12 img text 65535 0 Y N 封面图 13 content longtext 2147483647 0 Y N 正文 14 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 15 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间: 16 avatar varchar 255 0 Y N 发帖人头像: 17 type varchar 64 0 N N 0 论坛分类:[0,1000]用来搜索指定类型的论坛帖

表forum_type (论坛分类)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_id smallint 5 0 N Y 分类ID:[0,10000] 2 name varchar 16 0 N N 分类名称:[2,16] 3 description varchar 255 0 Y N 描述:[0,255]描述该分类的作用 4 url varchar 255 0 Y N 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 5 father_id smallint 5 0 N N 0 上级分类ID:[0,32767] 6 icon varchar 255 0 Y N 分类图标: 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

表hits (用户点击)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 hits_id int 10 0 N Y 点赞ID: 2 user_id int 10 0 N N 0 点赞人: 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间: 5 source_table varchar 255 0 Y N 来源表: 6 source_field varchar 255 0 Y N 来源字段: 7 source_id int 10 0 N N 0 来源ID:

表notice (公告)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 notice_id mediumint 8 0 N Y 公告id: 2 title varchar 125 0 N N 标题: 3 content longtext 2147483647 0 Y N 正文: 4 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

表praise (点赞)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 praise_id int 10 0 N Y 点赞ID: 2 user_id int 10 0 N N 0 点赞人: 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间: 5 source_table varchar 255 0 Y N 来源表: 6 source_field varchar 255 0 Y N 来源字段: 7 source_id int 10 0 N N 0 来源ID: 8 status bit 1 0 N N 1 点赞状态:1为点赞,0已取消

表slides (轮播图)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 slides_id int 10 0 N Y 轮播图ID: 2 title varchar 64 0 Y N 标题: 3 content varchar 255 0 Y N 内容: 4 url varchar 255 0 Y N 链接: 5 img varchar 255 0 Y N 轮播图: 6 hits int 10 0 N N 0 点击量: 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

表system_user (系统用户)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 system_user_id int 10 0 N Y 系统用户ID 2 user_name varchar 64 0 Y N 用户姓名 3 user_gender varchar 64 0 Y N 用户性别 4 examine_state varchar 16 0 N N 已通过 审核状态 5 recommend int 10 0 N N 0 智能推荐 6 user_id int 10 0 N N 0 用户ID 7 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间

表type (新闻资讯)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_id int 10 0 N Y 新闻资讯ID 2 news_headlines varchar 64 0 Y N 新闻标题 3 news_classification varchar 64 0 Y N 新闻分类 4 publishing_author varchar 64 0 Y N 发布作者 5 release_time datetime 19 0 Y N 发布时间 6 cover_photo varchar 255 0 Y N 封面图片 7 content_details longtext 2147483647 0 Y N 内容详情 8 hits int 10 0 N N 0 点击数 9 praise_len int 10 0 N N 0 点赞数 10 recommend int 10 0 N N 0 智能推荐 11 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 12 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间

表upload (文件上传)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 upload_id int 10 0 N Y 上传ID 2 name varchar 64 0 Y N 文件名 3 path varchar 255 0 Y N 访问路径 4 file varchar 255 0 Y N 文件路径 5 display varchar 255 0 Y N 显示顺序 6 father_id int 10 0 Y N 0 父级ID 7 dir varchar 255 0 Y N 文件夹 8 type varchar 32 0 Y N 文件类型

表user (用户账户:用于保存用户登录信息)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 user_id mediumint 8 0 N Y 用户ID:[0,8388607]用户获取其他与用户相关的数据 2 state smallint 5 0 N N 1 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) 3 user_group varchar 32 0 Y N 所在用户组:[0,32767]决定用户身份和权限 4 login_time timestamp 19 0 N N CURRENT_TIMESTAMP 上次登录时间: 5 phone varchar 11 0 Y N 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 6 phone_state smallint 5 0 N N 0 手机认证:[0,1](0未认证|1审核中|2已认证) 7 username varchar 16 0 N N 用户名:[0,16]用户登录时所用的账户名称 8 nickname varchar 16 0 Y N 昵称:[0,16] 9 password varchar 64 0 N N 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 10 email varchar 64 0 Y N 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 11 email_state smallint 5 0 N N 0 邮箱认证:[0,1](0未认证|1审核中|2已认证) 12 avatar varchar 255 0 Y N 头像地址:[0,255] 13 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间:

表user_group (用户组:用于用户前端身份和鉴权)

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 group_id mediumint 8 0 N Y 用户组ID:[0,8388607] 2 display smallint 5 0 N N 100 显示顺序:[0,1000] 3 name varchar 16 0 N N 名称:[0,16] 4 description varchar 255 0 Y N 描述:[0,255]描述该用户组的特点或权限范围 5 source_table varchar 255 0 Y N 来源表: 6 source_field varchar 255 0 Y N 来源字段: 7 source_id int 10 0 N N 0 来源ID: 8 register smallint 5 0 Y N 0 注册位置: 9 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间: 10 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间:

第5章  系统实现

5.1 登录

管理员输入账号、密码登录系统,这时候系统的数据库就会在进行查找相关的信息,如果我们输入的账号、密码不正确,数据库就会提示出错误的信息提示,同时会提示管理员重新输入自己的账号、密码,滑动滑块进行验证登录成功后,会提登录成功的信息。网站管理员登录效果图如图5-1所示:

     

图5-1登录界面

5.2  管理员功能模块

5.2.1 管理员界面

管理员后台后页面后可以看到后台首页、轮播图管、公告信息管理、交流管理(交流论坛、论坛分类)、系统用户(管理员、系统用户)、模块管理(新闻资讯、分类管理、浏览记录)等功能,图如下图5-2所示:

图5-2管理员界面图

5.2.1轮播图管理

管理员对轮播图管理进行标题、轮播图以及查看、添加、删除等操作。程序成效图如下图5-3所示:

图5-3添加轮播图界面图

5.2.2系统用户管理

管理员对用户信息编辑昵称、用户名、姓名、性别、等信息,可以跟进详情添加、删除、修改以及查看等操作。程序效果图如下图5-4所示:

图5-4用户信息系统界面

5.2.3交流管理

管理员对交流论坛进行标签、标题、分类、封面图等信息、可以跟进详情修改以及删除等操作。程序效果图如下图5-5所示:

图5-5交流论坛界面

图5-6论坛分类管理界面

5.2.4新闻资讯管理

管理员可以对新闻资讯进行查看编辑新闻标题、新闻分类、发布作者、发布时间、封面图等信息进行,添加、修改、删除等操作。程序效果图如下图5-7所示:

图5-7新闻资讯管理界面

5.2.5分类管理

管理员可以对分类管理进行查看编辑新闻分类等信息进行添加、修改、删除等操作。程序效果图如下图5-8所示:

图5-8添加分类管理界面

5.2.6浏览记录管理

管理员通过浏览记录页面查看到前台用户的浏览记录信息,程序效果图如下图5-9所示:

图5-9浏览记录界面

5.3 用户前后台功能模块

5.3.1 用户注册/登陆

 用户注册/登陆,在用户注册页面通过填写用户账号、设置密码、确认密码、昵称、邮箱、手机号、身份等信息完成用户注册/登陆。程序成效图如下图5-10所示:

图5-10前台用户注册/登陆界面图

5.3.2 交流论坛界面

用户可以在交流论坛界面中可以进行与用户交流也可以进行填写交流回复,也可以对交流进行删除。通过这种方式,用户们进行密切的交流。用户还可以编辑标题、标签、分类、封面图等内容进行发布论坛,程序效果图如下图5-11 5-12所示:

图5-11交流论坛信息界面图

图5-12发布论坛界面图

5.3.3我的

用户点击右上角我的进入我的账户,在个人资料页面可以对头像、昵称等操作。程序效果图如下图5-13所示:

图5-13个人资料界面图

5.3.5公告信息界面

用户在公告信息页面可查看管理员发布的最新公告信息。程序效果图如下图5-14所示:

图5-14公告信息界面图

5.3.6新闻资讯界面

用户在新闻资讯页面可以通过关键字或者下拉搜索查看新闻资讯信息,对喜欢的资讯可以进行收藏,点赞,评论,记录等操作,浏览后首页会进行推荐该类型新闻,程序效果图如下图5-15所示:

图5-15新闻资讯界面图

第6章  系统测试

6.1  测试目的

随着互联网不断的发展,目前各大领域都利用互联网进行了信息的管理,质量问题是很重要的标准,也决定着是否有更多的人使用。所以软件的质量我们必须要把关,必须要把软件做好,做到位,少出不必要的问题,这样才能有更多的用户使用,并且得到更多的推广。所以,我们在开发完系统后,需要进行大量的测试,以确保系统的稳定性和可使用性,并要确定系统的质量能否做到满足不同人的需求。这是系统在开发设计中非常重要的环节,测试的结果直接关系到系统的好坏。

集成测试:在系统测试当中会出现很多的问题,我们要及时的进行标注并且在进行测试的时候要采取自动化的测试,这样即准确又快速,而且不会出现疲劳,手动的测试很容易出现疲劳期,而且测试的结果也有时候会出错,所以在测试的时候才去自动测试时最好的测试方法。

在测试的过程中及时的发现问题,并且进行问题的解决,这样设计出的系统可以正常稳定的运行,不会出现重大的问题。我所进行的软件测试参照以下三个步骤进行测试:

(1)模块测试:对系统中的每一项都进行针对的测试,发现并找到问题。

(2)系统测试:让系统长时间进行各种情况下的运行,反馈运行期间的稳定性问题并解决。

(3)验收测试:其他测试完成后,最后检测阶段,确保软件准备就绪。

6.2  测试方法

在对系统进行测试的时候我们主要应用到两种测试的方法,通过测试我们就能找出可能存在的问题保证系统成功运行。

从软件的内部构造和具体实施是否有关系的观点来看:黑盒测试和白盒测试。

1)黑盒测试:测试系统功能,当用户进行相应的操作时,系统是否能够及时且准确的反馈数据,并执行相应功能。需要对功能以及使用方法进行详细的测试,保证所有的操作信息都能够完整的输出输入。

2)白盒测试:主要是对系统的结构进行测试,了解系统在运行过程中是否可以正常的工作。

新闻发布系统的测试也会从下面几方面进行:

(1)窗体测试:例如用户登录界面,在用户名和密码输入时,需要界面窗口弹出,给予用户反馈,我对窗口的设计进行了测试,确保每一个窗口在用户进行相应操作后,能够及时的弹出。

(2)数据跟踪:进行数据跟踪,我们就能知道系统功能是否在顺利的执行当中。将数据库中的相关的信息进行调动,弹出我们需要的相对应的数据信息。同时,在追踪过程中,我们也更容易的发现系统的问题所在,便于解决问题和维护系统。

(3)综合测试:完成上述测试后,需要对系统进行由内而外的重新检测,来宏观的发现系统中存在的问题,并且及时的进行解决,系统的设计要结合实际的使用情况有针对性的进行开发,可以满足不同人的需求。

6.3  功能测试

本新闻发布系统设计基本达到我理想的开发状态,在各个功能的运行方面,表现较为良好,基本满足用户的使用需求,及时矫正了较多的错误信息。总体说来,软件通过了相应的测试。

表6-1:用户登录测试表

模块名称 测试用例 预期结果 实际结果 是否通过 登录模块 用户名:122   密码:123   弹出错误提示,提示密码错误 弹出错误提示,提示密码错误 通过 登录模块 用户名:123    密码:122    弹出错误提示,提示用户名错误 弹出错误提示,提示用户名错误 通过 登录模块 用户名:001    密码:001    管理员登录成功 管理员登录成功 通过

表6-2:删除浏览记录测试表

模块名称 测试用例 预期结果 实际结果 是否通过 删除浏览记录模块 浏览记录:最新通知   删除成功、页面自动跳转 删除成功、页面自动跳转 通过

表6-3:修改密码测试表

模块名称 测试用例 预期结果 实际结果 是否通过 修改密码模块 原密码:666 新密码:123 确认密码:123   弹出错误提示,提示原密码错误 弹出错误提示,提示原密码错误 通过 修改密码模块 原密码:122   新密码:123 确认密码:333   弹出错误提示,提示确认密码不一致 弹出错误提示,提示确认密码不一致 通过 修改密码模块 原密码:123  新密码:123 确认密码:123   密码修改成功 密码修改成功 通过

6.4  测试结论

测试的过程要按照指定好的计划一步一步的实行,测试时候一定不要着急,并且将测试的结果进行详细的记录,我们在进行测试的时候做好选择自动化的测试,这样更加的准确也更快捷,如果采用人工测试的方法就不会这么的方便,很可能会出现一些问题,而且极其测试不会疲劳也不会出现问题。在测试的时候一定要非常专注,时刻关注着测试的结果,一旦发现异常及时进行修改,;最后,测试完之后的文档应该保存下来,方便以后测试时用到。

通过测试,我们也可以直观的感受到,在我们最开始进行系统设计的时候,先把思路理清楚,才能有机会把代码写好。有好的逻辑性的代码在后期的测试中才能避免出现问题,也可以给我们节省很多的时间和不必要的操作。

第7章 结  论

 新闻发布系统为用户提供了公平的、相互包容的、操作方便的使用系统,基本满足了用户的使用需要,以及我最初的开发目标和方向。PHP语言、MySQL数据库等技术时是我开发的基础,这些技术都有各自的优点,学好这些技术,至关重要。通过这些优点设计出来的系统能够正常稳定的运行,并且可以满足人们的所有需求,在对系统的需求以及各个模块进行了详细的分析后,有针对性的进行设计,最后通过测试,系统能够正常的运行,该新闻发布系统设计完成。

本次开发过程中使用的是PHP技术,该技术具有代码编写简单方便,对平台没有要求对技术方面也没有要求,并且有很好的面像对象性,所以在技术方面是相当成熟的。利用PHP技术作为系统主要的技术支持可以使得系统能够正常的运行并且实现相应的功能。在这次的系统的设计过程中遇到了很多的困难,幸好有老师同学们的帮助,在他们的帮助下完成了这次系统的设计。

通过这次新闻发布系统的开发,我参考了很多相关系统的例子,取长补短,吸取了其他系统的长处,逐步对该系统进行了完善,但是该系统还是有很多的不足之处,有待以后进一步学习。

实践证明,新闻发布系统有着非常好的发展前景,经过测试运行,系统各项功能都十分完善,界面漂亮,使用方便,操作容易,在技术理论上已经成熟。

                              参考文献

[1]Khalil Elbaz. A new model view controller implementation to maximise maintainability of web-based applications[J]. International Journal of System of Systems Engineering,2022,12(3).

[2]梁宽宏.基于MVC架构的校园新闻发布管理系统[J].电子世界,2021(18):182-183.DOI:10.19353/j.cnki.dzsj.2021.18.078.

[3]张屹峰.基于MVC框架的WEB系统项目的设计研究[J].电子世界,2021(17):53-54.DOI:10.19353/j.cnki.dzsj.2021.17.025.

[4]宋相阳,王晓红.基于MVC设计模式的新闻发布系统的设计与实现[J].课程教育研究,2018(27):253.

[5]樊娟.基于Web的新闻发布系统的设计与实现[J].山西电子技术,2017(02):70-72+96.

[6]唐晨. 小型新闻发布系统的设计与实现[D].吉林大学,2015.

[7]王亚坤. 凤凰网新闻发布系统的设计与实现[D].北京交通大学,2015.

[8]胡金峰. 基于MVC框架的新闻信息发布系统设计与实现[D].东北大学,2015.

[9]尤澜涛.一个新闻发布系统的设计与实现[J].福建电脑,2014,30(12):68-69.

[10]史瑾.基于MVC模式的新闻发布系统[J].烟台职业学院学报,2014,20(02):67-70.

[11]郭蕊. 基于B/S结构的新闻发布系统[D].吉林大学,2014.

[12]秦瑾若.基于MVC模式的新闻发布与管理系统设计与分析[J].广西民族大学学报(自然科学版),2014,20(01):79-83.DOI:10.16177/j.cnki.gxmzzk.2014.01.015.

[13]Qiao Fang Zhao,Yong Fei Li. Research and Development of Web-Based News Releasing System[J]. Advanced Materials Research,2013,2534(756-759).

[14]诸国华. 南洋学院网络新闻发布系统[D].电子科技大学,2013.

[15]李洪明. 新闻发布管理信息系统的分析与设计[D].云南大学,2013.

[16]叶鹏勇. 基于web的新闻发布系统[D].华南理工大学,2011.

[17]路宁. 校园新闻发布系统设计与实现[D].电子科技大学,2010.

[18]Anonymous. Bitcentral; Bitcentral Fuels Adoption of Its Open News Delivery Systems by Engaging New PR Agency, Bob Gold & Associates[J]. Technology & Business Journal,2010.

[19]张津铭,张哲源.基于MVC的高校新闻发布系统的设计与实现[J].烟台职业学院学报,2009,15(04):83-86.

[20]HYOWON LEE,ALAN F. SMEATON,NOEL E. O'CONNOR,BARRY SMYTH. User Evaluation of Fischlar-News: An Automatic Broadcast News Delivery System[J]. ACM transactions on information systems,2006,24(2).

                                                                      致  谢

光阴似箭,一晃大学生活即将过去了。一直以严谨的态度和积极的热情投身于学习和工作中,虽然有竞争,也有泪水,但是通过我不断学习和奋斗不断的完善自己,不仅很好的完成了我的学业而且也让我的各方面得到了发展,取得了很大的进步。

大学的生活也即将结束,虽然也有许多的不舍,但是终究是要告别的。回想大学的学习生活,有泪水也有汗水。在此期间我严格要求自己,凭着对知识的强烈追求,刻苦钻研,勤奋好学,态度端正,目标明确,牢固的掌握了一些专业知识和技能,做到了理论联系实际。除了专业知识的学习外,我还不断的扩展我的知识面,从不同的领域以不同的方式来获得新的知识。争取成为一名各方面都很合格的大学生。

这次的毕业设计,是我独自完成周期最长,也是耗力最大的一个项目。值得庆幸的是,在我毕业设计完成的过程当中,有许多帮助我的同学和老师。在几个月的开发过程中,我遇到了大大小小无数个问题。是我的舍友和老师,不断地帮助鼓励。

我的指导老师,在自身工作十分繁忙的情况下,依然能做到及时恢复我们发去的问题邮件,并抽时间对我们进行线下的辅导。指出我们设计上的失误,逻辑错误以及学习规划问题,可以说没有导师的帮助,我的毕设会陷入死胡同,是导师为我指点了迷津,像迷雾中的路灯,为我指明方向!

免费领取源码,请点赞关注私信博主

相关文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: