校园新闻管理系统的设计与实现结构设计说明.docx
《校园新闻管理系统的设计与实现结构设计说明.docx》由会员分享,可在线阅读,更多相关《校园新闻管理系统的设计与实现结构设计说明.docx(37页珍藏版)》请在冰豆网上搜索。
校园新闻管理系统的设计与实现结构设计说明
校园新闻管理系统的设计与实现结构设计
一、概述
1.1设计目的:
(1)基本掌握BS结构程序设计的基本思路和方法;
(2)达到熟练掌握PHP语言的基本知识和技能;
(3)熟练掌握MYSQL数据存储技术的基本知识和方法;
(4)能够利用所学的基本知识和技能,解决简单的程序设计问题
二、设计要求
2.1基本要求:
(1)要求利用WAMP或LAMP环境平台来设计与实现本系统;
(2)网站规划与设计;
(3)进行基本的界面设计,能够实现友好的交互;
(4)具有清晰的程序流程图和数据结构的详细定义;
(5)熟练掌握PHP语言与MYSQL数据库的应用。
2.2创新要求:
在基本要求达到后,可在HTML5技术、AJAX技术、JavaScript技术以及JQuery技术等方面采取一些创新性运用。
三、信息描述
新闻类别信息(编号,名称)
管理员信息(编号,名称,密码)
新闻信息(编号,标题,内容,发布时间,所属类别,发布人,浏览次数,附件)
评论信息(编号,时间,发表人IP,所属新闻,是否审核)
其他信息(根据需求自己添加)
四、功能描述
该系统的目的是设计一个B/S(浏览器/服务器)交互式的校园新闻管理系统网站。
要求网站不要脱离数据库而独立存在,完成前台Web设计和后台数据库的设计,要体现出交互性,其中系统前台用户可以完成的功能是:
浏览新闻;查看新闻评论;对新闻发表评论;后台管理员可以完成的功能是管理员管理;新闻类别管理;新闻管理;评论管理等。
五、需求分析
5.1新闻发布系统前台功能结构图
5.2新闻发布系统后台功能结构图
5.3流程图
新闻发布系统顶层数据流程图
新闻发布系统中层数据流程图
新闻信息管理底层数据流程图
六、数据库设计
6.1E-R图:
6.2根据实际需要设计数据库创建表,如图:
1.新建news表,记录发布的新闻信息
2.新建USER表,记录用户名和密码:
3.新建CATEGORY表,并添加记录,该表为可选择发布的新闻类型表:
4.新建review表,用来记录新闻评价的信息:
七、实验步骤:
新闻发布系统实施
设计界面后,在将系统移交给用户的一系列活动叫做系统实施。
新闻发布系统涉及新闻浏览,评价浏览,新闻发布等功能.
1.文件组织结构:
在“c:
\wamp\www”目录下创建”111”目录,在“111“目录下创建,如图所示:
2.数据库的实施
在“c:
\wamp\www\n111”目录下创建news.sql脚本文件,news.sql脚本文件首先设置存储引擎为InnoDB,然后设置字符集为gbk,接着创建news数据库,并在数据库中创建category表news表review表user表。
SQL语句如下:
settable_type=InnoDB;
showvariableslike'table_type';
setcharacter_set_client=gbk;
setcharacter_set_connection=gbk;
setcharacter_set_database=gbk;
setcharacter_set_results=gbk;
setcharacter_set_server=gbk;
setcollation_connection=gbk_chinese_ci;
setcollation_database=gbk_chinese_ci;
setcollation_server=gbk_chinese_ci;
showvariableslike'character%';
showvariableslike'collation%';
createdatabasenews;
usenews;
createtablecategory(
category_idintauto_incrementprimarykey,
namechar(20)notnull
)
createtableusers(
user_idintauto_incrementprimarykey,
namechar(20)notnull,
passwordchar(32)
)
createtablenews(
news_idintauto_incrementprimarykey,
user_idint,
category_idint,
titlechar(100)notnull,
publish_timedatetime,
contenttext,
clickedint,
attachmentchar(100),
constraintFK_news_userforeignkey(user_id)referencesusers(user_id),
constraintFK_news_categoryforeignkey(category_id)referencescategory(category_id)
)
createtablereview(
review_idintauto_incrementprimarykey,
news_idint,
contenttext,
publish_timedatetime,
statechar(10),
ipchar(15),
constraintFK_review_newsforeignkey(news_id)referencesnews(news_id)
)
启动NavicatLiteforMySQL软件
本地连接数据库:
点击连接—点击确定
在右边空白处右击鼠标,文件:
数据库news文件的地址---点击开始—刷新
完成数据库的连接,在各个表中输入相应的信息,保存SQL语句。
7.1代码设计
新闻管理和评价管理功能的实施
新闻管理(新闻发布,新闻浏览,修改新闻等)和评价管理(添加评价,评价浏览,删除评价,审查)的核心。
(1)编制MYSQL服务器连接函数和上传文件上传函数。
在“c:
\wamp\www\news\functions”目录下创建database.php文件程序用于实现MYSQL服务器连接的开启和关闭。
database.php代码如下:
php
$database_connection=null;
functionget_connection(){
$hostname="localhost";
$database="news";
$username="root";
$password="";
global$database_connection;
$database_connection=@mysql_connect($hostname,$username,$password)ordie(mysql_error());
mysql_query("setnames'UTF8'");
@mysql_select_db($database,$database_connection)ordie(mysql_error());
}
functionclose_connection(){
global$database_connection;
if($database_connection){
mysql_close($database_connection)ordie(mysql_error());
}
}
?
>
(2)向数据库中添加测试数据库的程序news_init.php。
在“c:
\wamp\www\news”目录下创建news_init.php文件程序负责向向用户表user中添加一个管理员用户,向新闻类别表中添加
news_init.php代码如下:
php
include_once("functions/database.php");
get_connection();
mysql_query("insertintocategoryvalues(null,'娱乐')");
mysql_query("insertintocategoryvalues(null,'财经')");
$password=md5(md5("admin"));
mysql_query("insertintousersvalues(null,'admin','$password')");
close_connection();
echo"成功添加初始化数据";
?
>
打开浏览器,输入http:
//localhost/111/init.php进行数据库初始化。
(3)创建新闻添加news_add.php
在“c:
\wamp\www\news”目录下创建news_add.php
文件,该文件中包括添加form表单为浏览器用户提供输入数据界面。
news_add.php代码如下:
php
include_once("functions/is_login.php");
session_start();
if(!
is_login()){
echo"请您登录系统后,再访问此页面!
";
return;
}
?
>
标题:
内容:
类别:
php
include_once("functions/database.php");
get_connection();
$result_set=mysql_query("select*fromcategory");
close_connection();
while($row=mysql_fetch_array($result_set)){
?
>
phpecho$row['category_id'];?
>">
phpecho$row['name'];?
>
php
}
?
>
附件:
(4)创建文件管理页面file_system.php
在C:
\wamp\www\news\functions目录下创建file_system.php文件,file_syst