一、 题目
基于PHP的新闻发布系统
二、 需求分析
1、 软件功能
新闻发布系统(News Release System or Content Management System)又叫做内容管理系统CMS(Content Management System),是一个基于网络的新闻发布和管理的管理系统,它是基于B/S模式的系统,本系统可以几乎完成新闻发布的所有功能。随着网络新闻发布系统的使用,网络充当了一个比电视报纸更重要的新闻媒介的功能。
我们对此系统的设计便是实现这个系统功能的前提。首先是提供一个发布的功能和新闻分类管理。其次,实现用户交互,用户可以参加对新闻的评论。最后要实现对这个新闻发布的综合管理,方便管理员的管理。
要实现这个庞大的功能,我们先对用户权限进行划分,不同的用户有着不同的权限。游客浏览者(没有登陆的)进入到新闻发布系统的主页面,可以浏览所有的相关新闻,查看他人的评论。但是没有任何特殊的特权。对于已经注册的浏览者(用户)不仅拥有游客浏览者的全部功能,还可以对某个新闻进行发表评论。最后是管理员,他拥有权限最高,他可以管理所有的新闻,以及新闻分类。可以增加和修改新的新闻分类,也可以增加和修改新的新闻内容。
2、 软件界面
根据新闻发布系统应具有的基本功能以及参考用户对新闻发布系统的要求我们将这个新闻发布系统进行功能模块上的划分,以方便逐个功能的实现。同时用户在使用中也非常方便,直观。因此经过我们反复的分析和设计,我们将这个新闻发布系统分为9大功能模块。详细的功能模块名称如下:
(1)新闻分类浏览模块
(2)新闻检索模块
(3)用户登陆后发表新闻评论模块
(4)用户的登陆与注册模块
(5)管理员后台新闻发布模块
(6)管理员后台新闻管理模块
(7)管理员后台新闻类别添加模块
(8)管理员后台新闻类别管理模块
(9)管理员后台评论审核模块
三、 软件设计
1、 数据库设计
数据库设计是CMS系中数据库设计的核心。 数据库设计直接决定CMS系统的功能流程和运行系统的效率。因此,数据库的设计则需要深思熟虑。务求做到兼顾新闻发布系统的各项功能。
数据库设计如下的数据项:
(1)新闻类别:类别ID、类别名称。
(2)用户信息:用户ID、用户名、登录密码。
(3)管理员信息:管理员ID、用户名、登录密码、职业。(只能通过操控数据库添加管理员)
(4)新闻发布:新闻ID、发布的管理员ID、类别ID、题目、图片URL、内容、发布时间、点击次数、附件URL。
(5)评论信息:评论ID、用户ID、新闻ID、评论内容、评论时间、审核状态、发布者IP。
create database news;
use news;
create table category(
category_id int auto_increment primary key,
name char(20) not null
);
create table users(
user_id int auto_increment primary key,
na