2 m_id int(2) 权限编号 3 username varchar(25) 管理员账号 4 password varchar(50) 密码 5 name varchar(50) 名称
图 4-1 系统用户表: p_admin
2. 系统配置表:p_config
用系统配置表来保存相关配置信息。
序列编号 字段名称 数据类型 说明 1 name varchar(20) 系统配置信息 2 values varchar(100) 信息值 3 remark tinytext 备注
图 4-2 系统配置表: p_config
3. 新闻基本表:p_newsbase
用新闻基本表来保存新闻列表的相关信息。
序列编号 字段名称 数据类型 说明 1 id int(11) 自动编号 2 cid int(11) 新闻编号 3 title varchar(50) 新闻标题 4 author varchar(25) 新闻作者 5 date_time int(10) 新闻发布时间
图 4-3 新闻基本表: p_newsbase
4. 新闻分类表:p_newsclass
新闻分类表主要用来保存新闻的分类信息。
序列编号 字段名称 数据类型 说明 1 id int(11) 自动编号 2 f_id int(11) 新闻类别编号 3 name varchar(25) 分类名称 4 keyword varchar(100) 关键字 5 remark varchar(100) 备注
图 4-4新闻分类表: p_newsclass
5. 新闻内容表:p_newscontent
此表主要用来保存各条新闻的详细内容信息。
序列编号 字段名称 数据类型 说明 1 nid int(11) 自动编号 2 keyword varchar(100) 关键字 3 content text 新闻详细内容 4 remark text 备注
图 4-5 新闻内容表: p_newscontent
图4-6 新闻发布系统数据库各表关联图
第5章 详细设计与实现
5.1目录结构
在运行实例时,需要将web目录复制到wamp目录下的www子目录下,该系统的目录结构如图 5-1 所示:
图 5-1 新闻发布系统目录结构图
5.2 模块划分
系统功能模块的划分,是在需求分析基础上进行的,是把具有复杂功能的系统通过设计分解为具有基本独立,功能简单,易于实现等特点的多个功能模块。模块划分的好处是,由于组成系统的模块基本独立,功能明确,因此便于模块的独立开发、维护和修改,而不会影响系统中的其他模块。
模块的划分应该遵循低耦合,高聚合的划分原则。耦合的高低表示模块之间联系程度的强弱。聚合表示一个模块内部组成之间的联系程度。低耦合就表示模块之间的联系越弱,反之,则联系程度强。耦合度越低,说明模块之间的联系越弱,则相互间产生影响和连锁反应的概率就越小。也就是说当某个模块出现故障或者需要修改和维护时,对系统其他模块产生的影响就小。该原则有助于提供系统的可维护性和可扩展性。
网络教学平台建设的总体功能由以下几大模块构成:
不同的文件放于不同的文件夹中,方便系统调用。admin文件夹主要放管理员模板文件;common主要放css和js文件;config主要放配置文件,包括数据库链接和常量声明文件,方便其它模板调用;images文件夹主要用于存储图片;templates和templates_c是Smarty的两个文件夹,是前台和后台相互桥梁,主要存储前台文件(html文件);global.php是通用模块,存储一些通用的代码信息,减少了代码的重复书写,供其它模块调用;index.php是网站首页。
5.3 系统主界面
新闻发布系统有两种用户:普通用户和管理员,分别有不同的权限,但都是从同一界面登陆,此系统首页采用DIV+CSS框架,使得页面看起来美观舒适。能自动获取系统当前时间,展示新闻列表内容和广告等信息。新闻界面和源码如下:
图 5-2 新闻发布系统主页
(一)后台代码:index.php
include_once('global.php');
$sql="SELECT * FROM `p_newsclass` where f_id=0 order by id DESC";
$query=$db->query($sql);
while($row_class=$db->fetch_array($query)){
$sm_class[]=array("name"=>$row_class[name],"id"=>$row_class[id]);
}
$smarty->assign("sm_class",$sm_class);//导航引入
//==============
$sql="SELECT * FROM p_config";
$query=$db->query($sql);
while($row_config=$db->fetch_array($query)){
$sm_config[]=$row_config[values];
}
$smarty->assign("sm_config",$sm_config);//配置引入
//==============
$sql="SELECT * FROM `p_newsbase` order by id DESC limit 10";
$query=$db->query($sql);
while($row_news=$db->fetch_array($query)){
$sm_news[]=array("title"=>$row_news[title],"id"=>$row_news[id]);
}
date_default_timezone_set("Asia/Hong_Kong");//时区设置
setlocale(LC_ALL,"chs");
$time=date("Y-m-d H:i:s");
$weekarray=array("日","一","二","三","四","五","六");
$week="星期".$weekarray[date("w")];
$time="朱先辉,您好!现在是: ".$time." ".$week;
$smarty->assign("sm_time",$time);
$smarty->assign("sm_news",$sm_news);//最新新闻
$smarty->display("index.html"); //导入前台文件 index.html
?>
(二)前台代码:index.html
- {$sm_time}
- 新闻首页
{section name=l loop=$sm_class}
- {$sm_class[l].name}
{/section}
- 产品展示
- 招聘信息
- 会员注册
- 会员登录
- 后台管理
:朱先辉
电话:07918129779
Q Q:421718431
手机:
地址:江西师大瑶湖校区
招聘信息
上一篇:
新闻发布系统论文(计算机)
下一篇:
网络能耗监测系统管理端的研究与实现