新闻发布系统报告文档格式.docx
《新闻发布系统报告文档格式.docx》由会员分享,可在线阅读,更多相关《新闻发布系统报告文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
功能描述4
3.1模型图:
4
3.2流程图:
功能实现5
4.1系统功能5
4.2网站前台的实现:
5
4.3网站后台的实现:
6
系统测试7
5.1主页面mainMaster.master:
7
5.2详细新闻NewsDetail.aspx:
5.3显示新闻信息ShowNewsInformation.aspx:
8
5.4新闻搜索SelectNews.aspx:
5.5加入收藏:
9
5.6会员登录Login.aspx:
10
5.7后台目录Menu.aspx:
5.8新闻管理NewsManage.aspx:
11
5.9新闻更新UpdateNews.aspx:
12
5.10用户管理UserManage.aspx:
5.11新闻添加AddNews.aspx:
13
5.12用户添加AddUser.aspx:
数据库设计14
6.1新闻表14
6.2用户表14
6.3新闻表内容15
6.4用户表内容15
6.5系统表116
6.6系统表216
部分源代码17
7.1用户登录17
7.2新闻管理18
7.3详细新闻20
7.4新闻更新21
7.5用户管理23
小结24
参考文献25
绪论
随着互连网的进一步发展网络媒体在人们心中的地位进一步提高新闻发布系统作为网络媒体的核心系统其重要性是越来越重要:
一方面它提供一个新闻管理和发布的功能,另一方面现在的新闻发布要求实现与普通的用户实现交互用户可以很方便地参加一些调查和相关新闻的评论。
新闻发布系统是基于新闻发布的内容以及管理的一个网站,本系统的数据经过组织将丰富杂乱无章的信息通过整合有序的呈现在浏览者的眼前。
当今信息的社会,信息量大,种类多,形式多样的特点,而现在网络作为一种的新的传播媒介,这就给浏览者带来了很多的方便。
环境介绍
1.1ASP.NET介绍
因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows2000/2003Server/VISTA/7/XP/WIN7上)。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。
ASP.NET同时也是language-independent(语言独立化)的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript,C++、F++。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。
ASP.NET一般分为两种开发语言,VB.NET和C#,C#相对比较常用,因为是.NET独有的语言。
传统的网站新闻管理方式有两种:
一种是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用;
另一种是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。
但是由于ASP技术本身的局限性使得系统有一些不可克服的缺陷。
ASP.NET不仅仅是ASP(ActiveServerPages,动态服务器页面)的下一个版本,而且是建立动态Web应用程序而重新打造的全新技术,其主要特色包括:
●语言的独立性;
●简单的开发操作,分离程序代码和网页内容;
●提高了执行效率;
●简化部署与组态的操作;
●支持客户端类型;
●支持下一代的Web服务;
●增进适用性;
●增进延展性;
●更多的支持工具;
●更佳的安全机制;
●会话(Session)可以跨进程、跨机器。
由于ASP.NET的众多优点,技术发展和各种客观实际的需要,该系统选用了ASP.NET来开发设计,实现了对校园新闻的动态管理操作,使得对新闻信息的发布与管理更加及时、高效,提高了工作效率。
ASP.NET与asp的区别
目前很多人对ASP.NET和asp很混淆,有的甚至认为两者是一样的!
因为他们根本不了解,其实两者是不同,asp是解释性编程框架,而ASP.NET是编译性框架,ASP.NET无论是从执行效率和安全上都远远超过asp,而文件上也是有差异的asp的后缀是.asp而ASP.NET则是.aspx和.aspx.cs,ASP.NET实现了代码分离。
可以说让代码管理更加直观。
1.2SQL介绍
结构化查询语言(StructuredQueryLanguage)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;
同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言语言作为数据输入与管理的接口。
结构化查询语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。
SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理SQL接口。
它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。
结构化查询语言(StructuredQueryLanguage)最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。
SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。
如今无论是像Oracle、Sybase、DB2、Informix、SQLServer这些大型的数据库管理系统,还是像VisualFoxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。
1.2.1SQL功能介绍
SQL面向数据库执行查询;
SQL可从数据库取回数据;
SQL可在数据库中插入新的记录;
SQL可更新数据库中的数据;
SQL可从数据库删除记录;
SQL可创建新数据库;
SQL可在数据库中创建新表;
SQL可在数据库中创建存储过程;
SQL可在数据库中创建视图;
SQL可以设置表、存储过程和视图的权限。
SQL语言的特点
●综合统一
●高度非过程化
●面向集合的操作方式
●以同一种语法结构提供多种使用方式
●语言简洁,易学易用
●对于数据统计方便直观
系统分析
2.1需求分析
1分类显示各类别新闻
2显示新闻的详细内容
3设置新闻搜索功能模块
4添加新用户
2.2可行性分析
新闻发布系统后台对新闻做了详细的分类,前台以分类形式显示新闻的详细信息,满足了人们浏览新闻时分类查看的要求,同时提供新闻信息查询功能,方便浏览者查找相关的新闻信息。
2.3研究目的及意义
根据新闻系统的需求进行开发设计,主要实现如下目标:
界面设计友好、美观、数据要准确、安全、可靠。
强大查询功能,方便用户浏览网站的所有信息。
设计会员登陆功能,保证新闻留言的安全性。
实现对信息的添加、修改、删除,便于更新网站内容。
系统最大限度地实现易维护性和易操作性。
因此操作的简易实用性就体现的尤其重要。
在此系统的开发中就很好的体现了这一点系统的界面美观典雅充满了人性化用户操作起来也容易上手。
对于一个新闻发布系统而言新闻信息是很多的,而且使用人数较多,所以对系统的安全性有比较高的要求:
对于数据库,要设置不同用户的权限,数据的修改必须由合法用户操作。
该系统使用ASP.NET(C#语言)和ADO.NET技术开发,实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。
该新闻系统具有一般新闻系统的功能,主要包括前台新闻查看区和后台管理区,可为学校各部门发布新闻,为校园网站提供新闻发布与管理的服务。
功能描述
功能实现
4.1系统功能
1查看新闻:
用户可以使用查看新闻功能。
用户可以查看首页上显示的所有新闻,每页显示5条新闻,这里的新闻按发布时间降序排列,以保证最新的新闻位于最前面,用户通过单击每条新闻的标题可以查看新闻的详细内容。
2新闻搜索:
用户可以使用新闻搜索功能。
在新闻查看页面上,用户可以在一个搜索框中搜索新闻的主要关键字,并选择类别,点击搜索就可以看到自己想要看到的新闻了。
3登录功能:
会员登录,即后台管理员登录功能,在登录页面输入用户名、密码和验证码即可登录后台管理页面。
如果输入的密码错误或用户名不存在,则不会登录到后台管理页面,而仍留在登录页面。
4新闻管理功能:
当管理员登录到后台时,即可对新闻进行管理操作,包括对已经存在的新闻的修改和删除。
前台阅读模块的最终目的是能方便地让用户读取到新闻,设计一个界面友好及能及时显示用户最需要信息的首页是在设计新闻发布系统时需要着重考虑的。
在新闻首页,一般将热门信息和最新信息放置在最显眼的位置,并提供栏目导航,使用户能随意方便地进入需要的栏目,并能看到栏目的新闻列表内容。
前台实现的功能主要包括:
●用户注册、修改已注册用户信息功能
●注册用户发布新闻功能
●新闻搜索功能
●各新闻类别中的新闻数量的统计功能
●用户对新闻进行评论功能
●热点新闻统计及浏览功能
●按类别浏览新闻
在后台管理中,管理员登录后可以对本系统进行后台的管理。
管理员能够管理现有的新闻,可以对现有的新闻进行删除、修改、浏览等操作,同时还可以发布新闻以及对新闻进行审核。
只有当管理员审核通过后腰发布的新闻才能显示在新闻浏览页面,这样可以保证新闻的合法性。
管理员还可以对新闻类别及系统用户进行增加、删除、修改等操作。
由于一条新闻可以有多条评论,因此在新闻评论管理中,管理员可以删除一条新闻的单条评论,也可以删除一条新闻的全部评论。
后台实现的功能主要包括:
●管理现有新闻
●发布新的新闻
●对要发布的新闻进行评审
●管理新闻评论
●管理新闻栏目
●管理系统用户
系统测试
是整个新闻发布系统的主页,将新闻分为各种版块,共分为时事、经济、军事、科技、生活、社会、体育和娱乐等八个小标题。
显示一整条新闻的全部内容。
显示同一版块下的所有新闻标题及时间。
通过搜索关键字,显示所有含有关键字的新闻标题。
当用户有收藏页面的需求时,可以点击“加入收藏”,即可将当前页面加入到用户自己的收藏夹中。
会员登录页面,包括用户名、密码及验证码。
其中用户名和密码为必填项。
后台管理目录的导航栏,包括环球经济、军事世界、科学技术、生活理财、社会百态、世界体育、娱乐综艺和用户管理等版块。
每一个目录又有添加新闻、管理新闻两个子目录。
更新一些新闻。
包括新闻类别、新闻标题和新闻内容。
其中新闻标题字数在12字以内,新闻标题和新闻内容为必填项。
包括用户编号、用户姓名、用户密码等。
可以对其进行删除和编辑等操作。
添加一条新闻,包括新闻类别、新闻标题(字数在12字以内)及新闻内容。
新闻标题和新闻内容为必填项。
添加一个新用户,包括用户姓名、用户密码。
数据库设计
6.1新闻表
6.2用户表
6.3新闻表内容
6.4用户表内容
6.5系统表1
6.6系统表2
部分源代码
7.1用户登录
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Linq;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
publicpartialclassLogin:
System.Web.UI.Page
{
SqlDatada=newSqlData();
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!
IsPostBack)
this.verifyCode.Text=Convert.ToString(GetCode());
}
publicintGetCode()
Randomrand=newRandom();
intcode=rand.Next(1000,9999);
returncode;
protectedvoidsubmit_Click(objectsender,EventArgse)
stringsqlstring="
select*fromtb_UserwhereName='
"
+this.username.Text.Trim()+"
'
andPassWord='
+this.pwd.Text.Trim()+"
;
SqlDataReadersdr=da.ExecuteRead(sqlstring);
sdr.Read();
if(sdr.HasRows)
if(this.checkCode.Text.Trim()==this.verifyCode.Text.Trim())
Response.Redirect("
Index.aspx"
);
else
Response.Write("
<
script>
alert('
输入的验证码错误!
)<
/script>
输入的姓名或密码错误!
请重新输入'
Server.Transfer("
Login.aspx"
protectedvoidcancel_Click(objectsender,EventArgse)
window.close();
location='
javascript:
history.go(-1)'
}
7.2新闻管理
publicpartialclassNewsManage:
publicstaticintnumber;
number=0;
intn=Convert.ToInt32(Request.QueryString["
id"
]);
this.ddlNewsCategories.SelectedIndex=(n-1);
this.bind();
protectedvoidbind()
this.gvdNews.DataSource=da.ExecuteDateSet("
select*fromtb_NewswhereCategories='
+this.ddlNewsCategories.SelectedValue.Trim()+"
orderbyid"
this.gvdNews.DataKeyNames=newstring[]{"
};
this.gvdNews.DataBind();
protectedvoidSelectBind()
+this.ddlNewsCategories.SelectedValue.ToString()+"
sqlstring+="
and((contentlike'
%"
+this.txtKey.Text+"
%'
)"
or(Titlelike'
))"
gvdNews.DataSource=da.ExecuteDateSet(sqlstring);
gvdNews.DataKeyNames=newstring[]{"
gvdNews.DataBind();
protectedvoidgvdNews_RowDeleting(objectsender,GridViewDeleteEventArgse)
SqlDataReadersdr=da.ExecuteRead("
deletefromtb_Newswhereid='
+this.gvdNews.DataKeys[e.RowIndex].Value.ToString()+"
sdr.Close();
if(number==1)
this.SelectBind();
bind();
}
protectedvoidbtnSearch_Click(objectsender,EventArgse)
number=1;
protectedvoidgvdNews_PageIndexChanging(objectsender,GridViewPageEventArgse)
gvdNews.PageIndex=e.NewPageIndex;
protectedvoidgvdNews_RowDataBound(objectsender,GridViewRowEventArgse)
if(e.Row.RowType==DataControlRowType.DataRow)
e.Row.Cells[3].Text=Convert.ToDateTime(e.Row.Cells[3].Text).ToShortDateString();
7.3详细新闻
publicpartialclassNewsDetail