基于PHP的新闻发布系统实验案例-lee
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
新闻发布系统开发实例
一、概述
随着互联网的逐步普及,通过网络浏览新闻获取最新资讯已经成为人们日常生活中的一部分,这让人们足不出户就能了解天下的最新动态。新闻发布系统就是人们实现浏览新闻的一个平台。通过这个系统普通的用户可以实现新闻的阅览,同时管理员可以在后台对新闻资讯进行有效管理。
本文通过PHP与MySQL的技术实现一个简单的新闻发布系统,实现新闻的发布以及新闻的基本的管理功能。
二、系统分析与设计
本系统是一个新闻的管理系统所以最基本的功能就是实现新闻的添加、修改、删除等各项基本功能;新闻动态有很多分类本系统应能实现对类似于国际新闻、体育新闻、娱乐新闻等各类新闻动态的分类;同时本系统还应有一个用户管理用于管理用户。
按照分析本本新闻发布系统应实现的功能如下:
(1)新闻管理:新闻的添加、修改、查询、浏览、删除。
(2)新闻类别管理:添加、删除
(3)用户管理:用户的添加;信息的查看、修改、删除。
三、数据库的设计与实现
1、设计数据库
按照系统的分析本系统本系统建立一个数据库,我们可以将其命名为news。这个数据库将包含两张表,一个是用于储存新闻类别与内容的表——news;一个是用户存储用户信息的表——usr。
如下表一所示,news表中包含的属性如下:
(1)id :news的编号。
(2)type:新闻的类别。
(3)title:新闻的标题。
(4)date:发布新闻的时间。
(5)author:发布新闻的作者。
(6)click:新闻的点击次数。
(7)content:新闻的内容。
表一news表(新闻)
创建news表
CREATE TABLE IF NOT EXISTS `news` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(20) CHARACTER SET utf8 NOT NULL, `type` varchar(20) CHARACTER SET utf8 NOT NULL, `date` date NOT NULL,
`content` text CHARACTER SET utf8 NOT NULL,
`author` varchar(10) CHARACTER SET utf8 NOT NULL, `click` int(20) NOT NULL,
PRIMARY KEY (`id`)
)
同理对于user表如下图1.2所示:
(1)id:用户编号。
(2)type:用户类别。
(3)username:用户名称。
(4)password:用户密码。
表二user表(用户表)
创建user表:
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`type` varchar(20) CHARACTER SET utf8 NOT NULL,
`username` varchar(20) CHARACTER SET utf8 NOT NULL,
`password` varchar(20) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
)
四、系统的实现
1.普通用户新闻界面实现
1.1、新闻发布系统首页
用户输入网址之后就来到了新闻发布系统的首页,普通的用户可以在首页中浏览各类新闻,其不需要任何权限。如下图1,我们暂把新闻的类型分为时政新闻与体育新闻两种。
图1 新闻发布系统首页
该部分的代码(index.php)如下所示:
//设置页面元信息
//设置标题
新闻发布系统
时政新闻 | 管理员登陆 | //设置标题栏及管理员登陆入口
include "connect.php"; //调用数据库连接文件connect.php(下文有详细叙述)
$query = "SELECT * from news where type=1 limit 5 "; //在news表中查询所有type=1(即时政新闻)的信息,并最多返回5条记录
$result = mysql_query($query, $conn);
while ($row = mysql_fetch_array($result)) { //输出所有的查询结果echo "
";
echo "
"; //设置新闻标题页面输出时的宽度 echo "" . $row["title"] . ""; echo " | ";"; //设置发布作者标签在输出时页面的宽度 echo "[" . $row["author"] . "]"; echo " | ";"; //设置发布日期标签在输出时页面的宽度 echo "[" . $row["date"] . "]"; echo " | ";
}
?>