新闻管理系统试验报告.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新闻 管理 系统 试验报告
- 资源描述:
-
校园新闻管理系统的设计与实现实验报告 班 级:10网工三班 学生姓名:谢昊天 学号: 项目实训目的: 本课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力,同时使学生掌握基于PHP、Mysql、HTML以及JavaScript等B/S模式的应用程序开发技能,为学生将来的就业提供了很好的时间锻炼的机会。 项目实训内容: 该系统的目的是设计一个B/S(浏览器/服务器)交互式的校园新闻管理系统网站。规定网站不要脱离数据库而独立存在,完毕前台Web设计和后台数据库的设计,要体现出交互性,其中系统前台用户可以完毕的功能是:浏览新闻;查看新闻评论;对新闻发表评论;后台管理员可以完毕的功能是管理员管理;新闻类别管理;新闻管理;评论管理等。 需求分析描述: 功能需求: 本系统的目的是实现新闻发布系统的基本功能。 本新闻发布系统提供了不同类型新闻(如校园新闻、体育新闻、娱乐新闻、国内新闻和国际新闻等) 满足不同用户需求;系统将用户分为:普通用户,系统管理员和新闻管理员。普通用户能在本系统中进行新闻浏览,阅读,新闻搜索。每条新闻的标题被做成一个链接,用户点击它们就能跳转页面进行新闻阅读;新闻阅读页面,每条新闻的具体信息将被取出,涉及内容、标题等;用户能根据自己的需要搜索新闻,如可以通过新闻标题或新闻内容对新闻进行搜索这样可以快速地找到符合条件的新闻,并输出搜索结果;用户能对新闻进行被评论(允许匿名评论)。系统管理员可以进行新闻分类管理、添加新闻、修改新闻、新闻审核和删除新闻,同时系统管理员能完毕用户管理如涉及系统用户管理、添加用户和更改账号。新闻管理员拥有添加新闻和更改账号的权限。根据用户不同,给予不同权限,这样加强系统的管理,同时加强系统的安全性。 性能需求: 根据新闻系统的需求进行开发设计,重要实现如下目的: 1.界面设计和谐、美观、数据要准确、安全、可靠。 2.强大查询功能,方便用户浏览网站的所有信息。 3.设计会员登陆功能,保证新闻留言的安全性。 4.实现对信息、比赛项目等信息的添加、修改、删除,便于更新网站内容。 5.系统最大限度地实现易维护性和易操作性。 操作的简易实用性本系统是新闻发布系统针对的用户大多数是学生,教师等等。因此操作的简易实用性就体现的特别重要。在此系统的开发中就很好的体现了这一点,系统的界面美观,典雅,充满了人性化;用户操作起来也容易上手。对于一个新闻发布系统而言新闻信息是很多的,并且使用人数较多,所以对系统的安全性有比较高的规定:对于数据库, 要设立不同用户的权限,数据的修改必须由合法用户操作。 功能需求: 本系统给用户提供了一个合理管理WEB 新闻的平台。也提供了快速浏览新闻的平台。 系统管理员的重要功能规定: 1.用户管理模块,涉及用户删除,修改,添加。 2.新闻栏目管理模块,涉及栏目删除,修改,添加。 3.新闻录入模块。 4.新闻管理模块,涉及新闻删除,新闻修改。 新闻浏览的重要功能规定: 1.新闻列表模块,涉及准时间显示列表,按类别显示列表。 2.新闻浏览模块。 3.新闻搜索和查找模块,涉及按作者查询、按标题查询等。 用户界面需求: 网站界面是用户直接访问的页面,所以必须要让用户一访问就能看出来这个网站的主题思想是什么,一下就能体现出这个网站的中心内容。并且首页的模块之间要联系紧密,更好的让用户理解明白。在这个页面上我们要做到所有查看消息的功能都能实现,或者说有能实现查询信息功能的连接。 新闻发布系统前台功能结构图 新闻发布系统前台功能结构 前台登录 新闻列表分页显示 新闻信息模糊查询 新闻具体信息显示 发布新闻评论 新闻发布系统后台功能结构图 新闻发布系统后台功能结构 新闻类别管理 后台用户注销 新闻信息管理 评论管理 类别添加 类别编辑 类别删除 新闻添加 新闻编辑 新闻删除 评论审核 评论删除 流程图: 新闻发布系统顶层数据流程图 新闻发布系统 游 客 管理员 发表评论 登录请求 新闻信息查看 新闻及新闻类别信息维护 评论信息维护 注销请求 新闻发布系统中层数据流程图 用户管理 评论管理 新闻信息查询 新闻信息维护 新闻类别管理 游客 管理员 用户users 评论review 新闻类别category 新闻news 注销请求 新闻类别信息 新闻信息 新闻类别信息 新闻信息 新闻信息 登录请求 发表评论 查看评论 评论信息 用户信息 评论信息 类别名称 新闻信息管理底层数据流程图 新闻信息查询 查看新闻具体信息 删除指定新闻 添加新闻 修改指定新闻 review news 游客 管理员 新闻信息保存 category 某一页的新闻列表框 显示某一页的新闻列表信息 所有评论信息息 新闻具体信息息 news_id 新闻具体信息息 新闻具体信息息 news_id news_id news_id 新闻具体信息及所有评论 新闻具体信息及所有评论 news_id及其他修改信息 news_id及其他修改信息 category_id+category_name 系统结构设计: 本系统给用户提供了一个合理管理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.数据库的实行 在“c:\wamp\www\n111”目录下创建news.sql脚本文献,news.sql脚本文献一方面设立存储引擎为InnoDB,然后设立字符集为gbk,接着创建news数据库,并在数据库中创建category表news表review表 user表。SQL语句如下: set table_type=InnoDB; show variables like 'table_type'; set character_set_client=gbk; set character_set_connection=gbk; set character_set_database=gbk; set character_set_results=gbk; set character_set_server=gbk; set collation_connection=gbk_chinese_ci; set collation_database=gbk_chinese_ci; set collation_server=gbk_chinese_ci; show variables like 'character%'; show variables like 'collation%'; 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, name char(20) not null, password char(32) ) create table news( news_id int auto_increment primary key, user_id int, category_id int, title char(100) not null, publish_time datetime, content text, clicked int, attachment char(100), constraint FK_news_user foreign key (user_id) references users(user_id), constraint FK_news_category foreign key (category_id) references category(category_id) ) create table review( review_id int auto_increment primary key, news_id int, content text, publish_time datetime, state char(10), ip char(15), constraint FK_review_news foreign key (news_id) references news(news_id) ) 启动Navicat Lite for MySQL软件 本地连接数据库:点击连接—点击拟定 在右边空白处右击鼠标,文献:数据库news文献的地址---点击开始—刷新 完毕数据库的连接,在各个表中输入相应的信息,保存SQL语句。 7.1代码设计 新闻管理和评价管理功能的实行 新闻管理(新闻发布,新闻浏览,修改新闻等)和评价管理(添加评价,评价浏览,删除评价,审查)的核心。 (1) 编制MYSQL服务器连接函数和上传文献上传函数。 在“c:\wamp\www\news\functions”目录下创建database.php文献程序用于实现MYSQL服务器连接的启动和关闭。database.php代码如下: <?php $database_connection = null; function get_connection(){ $hostname = "localhost"; $database = "news"; $username = "root"; $password = ""; global $database_connection; $database_connection = @mysql_connect($hostname,$username,$password) or die(mysql_error()); mysql_query("set names 'UTF8'"); @mysql_select_db($database,$database_connection) or die(mysql_error()); } function close_connection(){ global $database_connection; if($database_connection){ mysql_close($database_connection) or die(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("insert into category values(null,'娱乐')"); mysql_query("insert into category values(null,'财经')"); $password = md5(md5("admin")); mysql_query("insert into users values(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; } ?> <form action="news_save.php" method="post" enctype="multipart/form-data"> 标题:<input type="text" size="60" name="title" /><br /> 内容:<textarea name="content" type="text" rows="16" cols="60"></textarea><br /> 类别: <select name="category_id" size="1"> <?php include_once("functions/database.php"); get_connection(); $result_set = mysql_query("select * from category"); close_connection(); while($row = mysql_fetch_array($result_set)){ ?> <option value="<?php echo $row['category_id'];?>"><?php echo $row['name'];?></option> <?php } ?> </select><br /> 附件:<input type="file" name="news_file" size="50" /> <input type="hidden" name="MAX_FILE_SIZE" value="10485760" /><br /> <input type="submit" value="提交" /><input type="reset" value="重置" /> </form> (4)创建文献管理页面file_system.php 在C:\wamp\www\news\functions目录下创建file_system.php文献,file_system.php文献中提供了实现文献上传功能uploads()函数和下载功能download()函数。file_system.php代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""> <html xmlns=""> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>文献管理页面</title> </head> <body> <?php function upload($file,$file_path){ $error = $file['error']; switch($error){ case 0: $file_name = $file['name']; $file_temp = $file['tmp_name']; $destination = $file_path."/".$file_name; move_uploaded_file($file_temp,$destination); return "文献上传成功!"; case 1: return "上传附件超过了php.ini中upload_max_filesize选项限制的值";break; case 2: return "上传附件的大小超过了form表单MAX_FILE_SIZE选项指定的值";break; case 3: return "附件只有部分被上传!";break; case 4: return "没有上传附件!";break; } } function download($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); //输出文献内容 echo fread($file,filesize($file_dir.$file_name)); fclose($file); exit; } } ?> </body> </html> (4) 创建新闻信息保存页面news_save.php 在C:\wamp\www\news\目录下创建news_save.php文献,该程序实现的功能依次为:登录后访问,采集新闻的标题,内容,设立新闻的发布时间为WEB服务器时间,设立新闻的浏览次数为0 ,设立新闻的发布者ID为1,上传新闻的附件到uploads目录,附件上传成功后将新闻信息添加到数据库表中,将页面重定向到新闻标题列表页面news_list.php,并向news_list.php页面传递附件上传消息。 news_save.php代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""> <html xmlns=""> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>新闻信息保存页面</title> </head> <body> <?php include_once("functions/is_login.php"); session_start(); if(!is_login()){ echo "请您登录系统后,再访问此页面!"; return; } include_once("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["category_id"]; $title = $_POST["title"]; $content = $_POST["content"]; $currentDate = date("Y-m-d H:i:s"); $clicked = 0; $file_name = $_FILES["news_file"]["name"]; $message = upload($_FILES["news_file"],"uploads"); $sql = "insert into news values (null,$user_id,$category_id,'$title','$currentDate','$content','$clicked','$file_name')"; if($message=="文献上传成功!"||$message=="没有上传附件!"){ include_once("functions/database.php"); get_connection(); mysql_query($sql); close_connection(); } } header("Location:news_list.php?message=$message"); ?> </body> </html> (5) 创建新闻标题列表显示页面news_list.php 在C:\wamp\www\news\目录下创建news_list.php文献,该程序实现的功能依次为:显示上传的状态信息,提供一个新闻模糊查询的form表单,按照新闻发布时间降序显示新闻的标题以及编辑和删除超链接,当点击新闻标题的超链接时进入新闻的具体信息页面news_detail.php,查看新闻具体信息,当点击编辑超链接时进入新闻编辑界面news_edit.php,实现的新闻的编辑,当点击删除超链接时进入新闻删除页面news_delete.php,实现对新闻的删除。实现分页。 news_list.php代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""> <html xmlns=""> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>新闻浏览</title> </head> <body> <?php include_once("functions/database.php"); include_once("functions/page.php"); include_once("functions/is_login.php"); session_start(); if(isset($_GET["message"])){ //echo $_GET["message"]."<br/>"; } //构造查询所有新闻的sql语句 $search_sql = "select * from news order by news_id desc"; //进行模糊查询,取得模糊查询的关键字keyword $keyword = ""; if(isset($_GET["keyword"])){ $keyword = $_GET["keyword"]; $search_sql = "select * from news where title like '%$keyword%' or content like '%$keyword%' order by news_id desc"; } ?> <form action="news_list.php" method="get"> 请输入关键字:<input name="keyword" type="text" value="<?php echo $keyword?>" /> <input type="submit" value="搜索" /> </form> <br /> <table> <?php get_connection(); //分页的实现 //分页的实现 $result_news = mysql_query($search_sql); $total_records = mysql_num_rows($result_news); $page_size = 3; if(isset($_GET["page_current"])){ $page_current = $_GET["page_current"]; }else{ $page_current=1; } $start = ($page_current-1)*$page_size; $result_sql = "select * from news order by news_id desc limit $start,$page_size"; if(isset($_GET["keyword"])){ $keyword =trim($_GET["keyword"]); //构造模糊查询新闻的SQL语句 $result_sql = "select * from news where title like '%$keyword%' or content like '%$keyword%' order by news_id desc limit $start,$page_size"; } $result_set = mysql_query($result_sql); close_connection(); if(mysql_num_rows($result_set)==0){ exit("暂无记录!"); } while($row = mysql_fetch_array($result_set)){ ?> <tr> <td><a href="news_detail.php?keyword=<?php echo $keyword?>&news_id=<?php echo $row['news_id']?>"><?php echo mb_strcut($row['title'],0,40,"gbk")?></a></td><!-- mb_strcut截取字符串--> <!--管理员登录显示如下信息--> <?php if(is_login()){?> <td><a href="news_edit.php?news_id=<?php echo $row['news_id']?>">编辑</a></td> <td><a href="news_delete.php?news_id=<?php echo $row['news_id']?>" onclick="return confirm('拟定删除?');">删除</a></td> <?php }?> </tr> <?php } ?> </table> <?php $url = $_SERVER['PHP_SELF'];//获取当前页面 page($total_records,$page_size,$page_current,$url,$keyword); ?> </body> </html> (6) 创建新闻信息的修改页面news_edit.php。 在C:\wamp\www\news\目录下创建news edit.php文献,该程序的功能是:当点击新闻标题列表页面news_list.php中的 编辑 超链接时,news_edit.php页面从数据库中查询指定新闻的具体信息并显示在编辑页面news_edit.php中,新闻内容进入编辑状态。 news_edit.php代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""> <html xmlns=""> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>新闻编辑页面</title> </head> <body> <?php include_once("functions/is_login.php"); session_start(); if(!is_login()){ echo "请您登录系统后,再访问此页面!"; return; } include_once("functions/database.php"); $news_id = $_GET["news_id"]; get_connection(); $result_news = mysql_query("select * from news where news_id = $news_id"); $result_category = mysql_query("select * from category"); close_connection(); $news = mysql_fetch_array($result_news); ?> <form action="news_update.php" method="post"> 标题:<input type="text" size="68" name="title" value="<?php echo $news['title']?>"/><br /> 内容:<textarea name="content" type="text" rows="16" cols="60"><?php echo $news['content']? ></textarea><br /> 类别:<select name="category_id" size="1"> <?php while($category = mysql_fetch_array($result_category)){ ?> <option value="<?php echo $category['category_id'];?>" <?php echo ($news ['category_id']==$category['category_id'])?"selected":""?>><?php echo $category['name'];?> </option> <?php } ?> </select><br /> <br /> <input type="hidden" name="news_id" value="<?php echo $news_id?>" /> <input type="submit" value="修改" /> <input type="button" value="取消" onclick="window.history.back();" </form> </body> </html> (7) 创建新闻信息的修改页面news_update.php。 在C:\wamp\www\news\目录下创建news_update.php,该文献的功能:单机news_edit.php页面 修改 按钮时,修改指定新闻的信息,然后将页面重定向到news_update.php页面,并向news_list.php页面传递“新闻信息修改成功!”信息。 news_update.php代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""> <html xmlns=""> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php include_once("functions/is_login.php"); session_start(); if(!is_login()){ echo "请您登录系统后,再访问此页面!"; return; } include_once("functions/database.php"); $news_id = $_POST["news_id"]; $category_id = $_展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




新闻管理系统试验报告.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/3893970.html