新闻管理系统试验报告Word文档下载推荐.docx
《新闻管理系统试验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《新闻管理系统试验报告Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
操作的简易实用性本系统是新闻发布系统针对的用户大多数是学生,教师等等。
因此操作的简易实用性就体现的尤其重要。
在此系统的开发中就很好的体现了这一点,系统的界面美观,典雅,充满了人性化;
用户操作起来也容易上手。
对于一个新闻发布系统而言新闻信息是很多的,而且使用人数较多,所以对系统的安全性有比较高的要求:
对于数据库,
要设置不同用户的权限,数据的修改必须由合法用户操作。
本系统给用户提供了一个合理管理WEB新闻的平台。
也提供了快速浏览新闻的平台。
系统管理员的主要功能要求:
1.用户管理模块,包括用户删除,修改,添加。
2.新闻栏目管理模块,包括栏目删除,修改,添加。
3.新闻录入模块。
4.新闻管理模块,包括新闻删除,新闻修改。
新闻浏览的主要功能要求:
1.新闻列表模块,包括按时间显示列表,按类别显示列表。
2.新闻浏览模块。
3.新闻搜索和查找模块,包括按作者查询、按标题查询等。
用户界面需求:
网站界面是用户直接访问的页面,所以必须要让用户一访问就能看出来这个网站的主题思想是什么,一下就能体现出这个网站的中心内容。
并且首页的模块之间要联系紧密,更好的让用户理解明白。
在这个页面上我们要做到所有查看消息的功能都能实现,或者说有能实现查询信息功能的连接。
新闻发布系统前台功能结构图
新闻发布系统后台功能结构图
流程图:
新闻发布系统顶层数据流程图
新闻发布系统中层数据流程图
新闻信息管理底层数据流程图
系统结构设计:
本系统给用户提供了一个合理管理WEB新闻的平台。
系统管理员的主要功能要求:
1、用户管理模块,包括用户删除,修改,添加。
2、新闻栏目管理模块,包括栏目删除,修改,添加。
3、新闻录入模块。
4、新闻管理模块,包括新闻删除,新闻修改。
1、新闻列表模块,包括按时间显示列表,按类别显示列表。
2、新闻浏览模块。
3、新闻搜索和查找模块,包括按作者查询、按标题查询等。
新闻发布系统前台功能结构:
1、前台登录;
2、新闻列表分页显示;
3、新闻信息模糊查询;
4、新闻详细信息显示;
5、发布新闻评论。
新闻发布系统后台功能结构:
1、新闻类别管理
类别添加
类别编辑
类别删除
2、后台用户注销
3、新闻信息管理
新闻添加
新闻编辑
新闻删除
4、评论管理
评论审核
评论删除
实验结果:
1、实现字符串翻转功能页面test1.php运行结果如下所示,此页面实现了英文和中文的字符翻转功能。
2、实现中文字符串截取功能页面test2.php运行结果如下所示,功能已经实现。
3、实现中文字符比较功能页面test3.php运行结果如下所示,功能已经实现。
4、实现HTML字符串过滤功能页面test4.php运行结果如下所示,各个字符出来函数处理的结果不相同,各个各的用处。
实验总结:
经过两周的课程设计,是我综合运用了PHP表达式、PHP函数编写、PHP数组、PHP数据采集、PHP会话控制等这学期所学习的知识,不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
在这次设计过程中,体现出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
通过本学期对PHP网络编程的学习、使我对PHP编程有了更深层次的理解和运用。
在本次课程设计中中,回顾书本上的理论知识,巩固了我的知识。
也检验了这学期的学习成果。
系统实现过程:
新闻发布系统实施
设计界面后,在将系统移交给用户的一系列活动叫做系统实施。
新闻发布系统涉及新闻浏览,评价浏览,新闻发布等功能.
1.文件组织结构:
在“c:
\wamp\www”目录下创建”111”目录,在“111“目录下创建,如图所示:
2.数据库的实施
\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;
character%'
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,
statechar(10),
ipchar(15),
constraintFK_review_newsforeignkey(news_id)referencesnews(news_id)
启动NavicatLiteforMySQL软件
本地连接数据库:
点击连接—点击确定
在右边空白处右击鼠标,文件:
数据库news文件的地址---点击开始—刷新
完成数据库的连接,在各个表中输入相应的信息,保存SQL语句。
7.1代码设计
新闻管理和评价管理功能的实施
新闻管理(新闻发布,新闻浏览,修改新闻等)和评价管理(添加评价,评价浏览,删除评价,审查)的核心。
(1)编制MYSQL服务器连接函数和上传文件上传函数。
\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(){
if($database_connection){
mysql_close($database_connection)ordie(mysql_error());
}
}
>
(2)向数据库中添加测试数据库的程序news_init.php。
\wamp\www\news”目录下创建news_init.php文件程序负责向向用户表user中添加一个管理员用户,向新闻类别表中添加
news_init.php代码如下:
include_once("
functions/database.php"
get_connection();
mysql_query("
insertintocategoryvalues(null,'
娱乐'
)"
财经'
$password=md5(md5("
admin"
));
insertintousersvalues(null,'
admin'
'
$password'
close_connection();
echo"
成功添加初始化数据"
打开浏览器,输入http:
//localhost/111/init.php进行数据库初始化。
(3)创建新闻添加news_add.php
\wamp\www\news”目录下创建news_add.php
文件,该文件中包括添加form表单为浏览器用户提供输入数据界面。
news_add.php代码如下:
php
include_once("
functions/is_login.php"
session_start();
if(!
is_login()){
echo"
请您登录系统后,再访问此页面!
return;
formaction="
news_save.php"
method="
post"
enctype="
multipart/form-data"
标题:
inputtype="
text"
size="
60"
name="
title"
/>
br/>
内容:
textareaname="
content"
type="
rows="
16"
cols="
/textarea>
类别:
selectname="
category_id"
1"
$result_set=mysql_query("
select*fromcategory"
while($row=mysql_fetch_array($result_set)){
<
optionvalue="
phpecho$row['
category_id'
];
name'
/option>
/select>
附件:
file"
news_file"
50"
hidden"
MAX_FILE_SIZE"
value="
10485760"
submit"
提交"
reset"
重置"
/form>
(4)创建文件管理页面file_system.php
在C:
\wamp\www\news\functions目录下创建file_system.php文件,file_system.php文件中提供了实现文件上传功能uploads()函数和下载功能download()函数。
file_system.php代码如下:
!
DOCTYPEhtmlPUBLIC"
-//W3C//DTDXHTML1.0Transitional//EN"
"
http:
//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
htmlxmlns="
//www.w3.org/1999/xhtml"
head>
metahttp-equiv="
Content-Type"
content="
text/html;
charset=utf-8"
title>
文件管理页面<
/title>
/head>
body>
functionupload($file,$file_path){
$error=$file['
error'
switch($error){
case0:
$file_name=$file['
$file_temp=$file['
tmp_name'
$destination=$file_path."
/"
.$file_name;
move_uploaded_file($file_temp,$destination);
return"
文件上传成功!
case1:
上传附件超过了php.ini中upload_max_filesize选项限制的值"
break;
case2:
上传附件的大小超过了form表单MAX_FILE_SIZE选项指定的值"
case3:
附件只有部分被上传!
case4:
没有上传附件!
functiondownload($file_dir,$file_name){
if(!
file_exists($file_dir.$file_name)){//检查文件是否存在
exit("
文件不存在或已删除"
}else{
$file=fopen($file_dir.$file_name,"
r"
//打开文件
header("
Content-Disposition:
attachment;
filename="
.$file_name);
//输出文件内容
echofread($file,filesize($file_dir.$file_name));
fclose($file);
exit;
}
/body>
/html>
(4)创建新闻信息保存页面news_save.php
\wamp\www\news\目录下创建news_save.php文件,该程序实现的功能依次为:
登录后访问,采集新闻的标题,内容,设置新闻的发布时间为WEB服务器时间,设置新闻的浏览次数为0,设置新闻的发布者ID为1,上传新闻的附件到uploads目录,附件上传成功后将新闻信息添加到数据库表中,将页面重定向到新闻标题列表页面news_list.php,并向news_list.php页面传递附件上传消息。
news_save.php代码如下:
新闻信息保存页面<
session_start();
if(!
echo"
return;
functions/file_system.php"
if(empty($_POST)){
$message="
上传的文件超过了php.ini中post_max_size选项限制的值"
}else{
//$user_id=1;
$user_id=$_SESSION["
user_id"
$category_id=$_POST["
$title=$_POST["
$content=$_POST["
$currentDate=date("
Y-m-dH:
i:
s"
$clicked=0;
$file_name=$_FILES["
]["
name"
$message=upload($_FILES["
],"
uploads"
$sql="
insertintonewsvalues
(null,$user_id,$category_id,'
$title'
$currentDate'
$content'
$clicked'
$file_name'
if($message=="
||$message=="
){
include_once("
get_connection();
mysql_query($sql);
close_connection();
header("
Location:
news_list.php?
message=$message"
(5)创建新闻标题列表显示页面news_list.php
\wamp\www\news\目录下创建news_list.php文件,该程序实现的功能依次为:
显示上传的状态信息,提供一个新闻模糊查询的form表单,按照新闻发布时间降序显示新闻的标题以及编辑和删除超链接,当点击新闻标题的超链接时进入新闻的详细信息页面news_detail.php,查看新闻详细信息,当点击编辑超链接时进入新闻编辑界面news_edit.php,实现的新闻的编辑,当点击删除超链接时进入新闻删除页面news_delete.php,实现对新闻的删除。
实现分页。
news_list.php代码如下:
Content