ASP新闻发布系统课程设计报告

更新时间:2024-06-27 16:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目 录

第1章 课程设计内容及要求 .................... 2 第2章 系统分析与总体设计 .................... 3 2.1 系统功能描述 ............................ 3 2.2 系统功能模块划分 ........................ 4 2.3 系统流程分析 ............................ 6 第3章 数据库的设计 .......................... 7 3.1 创建数据库 ............................. 7 3.2 数据库的逻辑设计 ........................ 7 第4章 详细设计 .............................. 9 4.1 系统主界面 ............................. 9 4.2 程序登录界面 ........................... 10 4.3 新闻管理界面 ........................... 11 4.4 新闻类别管理界面 ....................... 12 4.5 新闻发布管理界面 ....................... 14 4.6 新闻查询界面 ........................... 16 第5章 课程设计心得 ......................... 18 参考文献(资料) ............................. 19

华东交通大学理工学院课程设计报告

第1章 课程设计内容及要求

1.设计内容

本次任务是要实现一个新闻发布系统,系统的主要功能包括:管理员登录功能、查看新闻功能、发布新闻功能和新闻管理功能。用户可使用本系统来查看、发布新闻。用户可以通过单击每条新闻的标题来查看该条新闻的详细内容。新闻总体设计可分为新闻标题、新闻作者、新闻类别、新闻内容和发布日期。当用户作为系统管理员,成功登录后,可以使用新闻管理功能。新闻管理功能包括对现有新闻的修改,增加和删除等,管理员操作完毕后,可单击“管理员退出”超链接退出登录状态。

2.设计要求

基于ASP和SQL数据库设计一个新闻发布系统,要求系统具有登录功能以及对新闻信息的增、删、查、改等基本功能。

第 2 页 共 19 页

华东交通大学理工学院课程设计报告

第2章 系统分析与总体设计

2.1 系统功能描述

新闻发布及管理系统包括新闻类别管理、新闻发布管理、图片处理、新闻查询、网友评论和用户管理等模块。具体描述如下: 1.新闻类别管理:

(1)新闻类别的录入,包括类别编号和类别名称等信息; (2)新闻类别的修改; (3)新闻类别的删除; (4)新闻类别的查询。 2.新闻发布管理:

(1)基本新闻信息的录入,包括新闻标题、新闻内容和所属类别等; (2)基本新闻信息的修改; (3)基本新闻信息的删除; 3.图片处理模块:

(1)选择图片文件;(2)上传图片文件; (3)存储图片新闻;(4)修改新闻图片;

(5)删除新闻图片;(6)在网页中浏览新闻图片。 4.新闻查询模块:

(1)按照新闻类别分页显示新闻;(2)按照日期分页显示新闻。 5.网友留言模块:

(1)网友对某条新闻发表评论;(2)管理员可以删除新闻评论。 6.系统用户管理功能:

(1)系统用户信息的录入,包括用户名和密码等信息;(2)系统用户信息的修改; (3)系统用户信息的删除。

第 3 页 共 19 页

华东交通大学理工学院课程设计报告

2.2 系统功能模块划分

从功能描述的内容可以看到,本实例可以实现6个完整的功能。我们根据这些功能,设计出系统的功能模块。

新闻发布及管理系统 新闻类别管理新闻发布及管理 图片处理模块新闻查询模块网友评论模块系统用户管理新闻发布及管理系统的功能模块之间的关系:

新 闻 类别管理

后台系统 基本信息发布 图2-1系统功能模块图

数据库 新闻图片发布 前台系统 新发闻表查网询友管评理论

图2-2新闻发布及管理系统的功能模块关系图

第 4 页 共 19 页

华东交通大学理工学院课程设计报告

在本系统中,用户管理模块的功能比较简单。在系统初始化时,有一个默认的“系统管理员”用户Admin,由程序设计人员手动地添加到数据库中。Admin用户可以创建用户、修改和删除用户;普通用户则只能修改自己的用户名和密码。

用户管理功能模块的关系:

Admin 用户 修改Admin用户的密码 系统用户信息管理创建、修改、删除普通用户信息 普通用户 修改自身的

图2-3用户管理功能模块的关系图

第 5 页 共 19 页

华东交通大学理工学院课程设计报告

2.3 系统流程分析

本系统分为前台系统和后台系统两个部分。前台系统不需要进行身份认证,任何人都可以通过浏览器阅读已经发布的新闻、发表网友评论。

后台系统的流程分析如下图所示。Admin用户拥有所有的权限,普通用户只能对自己发布的新闻进行管理,包括修改新闻内容、删除新闻和删除网友评论。

开始 失败重试 用户登录 Admin 管理所有用户的信息 管理新闻类别,发布信息,所有新闻信息的管理 普通用户 管理自己的信息 新闻发布,自己发布的新闻的管理

图2-4后台系统的流程分析图

第 6 页 共 19 页

华东交通大学理工学院课程设计报告

第3章 数据库的设计

3.1 创建数据库

首先创建一个数据库news,用来保存本系统的所有数据。创建数据库的脚本代码如下: CREATE DATABASE news GO

可以在SQL查询分析器中执行该语句,创建数据库。

3.2 数据库的逻辑设计

本系统定义的数据库中包含以下4个表:新闻类别表:Category、新闻基本信息表:News、网友评论信息表:Discuss和用户信息表:users。 下面分别介绍这些表的结构。 1.新闻类别表Category

新闻类别表Category用来保存新闻类别数据,结构如表1所示。 表1 表Category的结构 编号 1 2 字段名称 CateId CateName 数据结构 int varchar (50) 说明 新闻类别编号 新闻类别名称 2.基本新闻表News

基本新闻表News用来保存网上新闻的基本信息,结构如表2所示。 表2表News的结构 编号 1 2 3 4 5 6 7 8 字段名称 Id Title Content PostTime Poster CateId Attpic Readcount 数据结构 int varchar(100) text datetime varchar(50) int bit int 说明 新闻编号 新闻标题 新闻内容 提交时间 提交人 新闻类别编号 是否有图片标记(0没有;1有) 阅读次数 第 7 页 共 19 页

华东交通大学理工学院课程设计报告

3.网友评论信息表Discuss

网友评论信息表Discuss用来保存网友对新闻的评论信息,结构如表3所示。 表3 表Discuss的结构 编号 1 2 3 4 5 字段名称 id UserId Posttime Content Newsld 数据结构 int varchar(20) sinaildatetime varchar(4000) int 说明 评论编号 评论人名称 提交时间 评论内容 新闻编号 4..用户信息表Users 用户信息表Users用来保存用户的基本信息,结构如表 4所示。 编号 1 2 3 4 5

字段名称 UserId UserName UserPwd Ename Email 数据结构 int varchar(50) varcahr(50) varchar(50) varchar(50) 说明 用户ID号 用户名 密码 用户姓名 电子邮箱

第 8 页 共 19 页

华东交通大学理工学院课程设计报告

第4章 详细设计

4.1 系统主界面

本主界面为default.asp,它的功能是显示新闻类别和每个类别中的10条新闻,并提供进入管理界面(index.asp)的链接。

录入新闻类别和新闻内容后,default.asp的界面如图4-1所示

图4-1 default.asp的界面

主要代码:

sql = \ Set rsCate = conn.Execute(sql) '显示所有新闻类别链接 Do While Not rsCate.EOF

stitle = rsCate(\ cid = rsCate(\

'每个新闻类别标题被定义为一个书签,名为 #a类别编号 %>

<%=stitle%> | <%

rsCate.MoveNext Loop %>

第 9 页 共 19 页

华东交通大学理工学院课程设计报告

程序登录界面

图4-2登录界面图

第 10 页 共 19 页4.2

华东交通大学理工学院课程设计报告

4.3 新闻管理界面

图4-3新闻管理界面图

主要代码:

<% Dim rs,rsCate

Set rs = Server.CreateObject(\ set rsCate = Server.CreateObject(\ '定义变量

Dim iflag,sql_where

'参数flag表示指定的新闻类别

iflag = Request.QueryString(\

'设置SQL语句,读取所有的新闻类别到rs.Cate sql = \ Set rsCate = conn.Execute(sql)

'显示新闻类别链接,注意根据类别编号设置参数flag DO WHILE Not rsCate.EOF

stitle = rsCate(\ cid = rsCate(\

%>| '><%=stitle%> <%

rsCate.MoveNext Loop %>

第 11 页 共 19 页

华东交通大学理工学院课程设计报告

4.4 新闻类别管理界面

图4-4新闻类别管理界面

主要代码: dim Soperate

Soperate = Request.QueryString(\

Operid = Request.QueryString(\ '删除

If Soperate=\

sql = \ Set rs = Conn.Execute(sql) If rs.EOF Then

sqldelt = \ Conn.Execute(sqldelt)

Response.Write \新闻类别已经成功删除!\ Else

Response.Write \新闻类别中包含新闻,不能删除\ End If '添加

ElseIf Soperate = \

CateName = Request(\'判断是否已经存在此类别名称

sql = \Set rs = Conn.Execute(sql) '如果没有此类别名称,则创建新记录

第 12 页 共 19 页

华东交通大学理工学院课程设计报告

If Rs.EOF Then

sql = \ Conn.Execute(sql)

Response.Write\新闻类别已经成功添加!\ Else

Response.Write \已经存在此类别名称!\ End If

Set rs = Nothing

ElseIf Soperate = \CateName = Request(\

'如果新类别名称与旧名称不同,则判断是否存在此类别名称

sql = \CateId=\

Set rs = conn.Execute(sql) If Rs.EOF Then

'如果原类别编号和新类别名称不存在,则表示类别名称发生变化 Set rs = Nothing '此时判断是否存在此类别名称

sql = \ Set rs = Conn.Execute(sql) If Rs.EOF Then '新类别不存在

conn.Execute(\CateId=\

Response.Write \新闻类别已经成功修改!\ Else

Response.Write \已经存在此类别名称\ End if End If End If %>

第 13 页 共 19 页

华东交通大学理工学院课程设计报告

4.5 新闻发布管理界面

图4-5新闻发布管理界面图

主要代码: <%

Set rs = Server.CreateObject(\ '将新闻类别装入下拉菜单中

sql = \ Set rsCate = Conn.Execute(sql)

第 14 页 共 19 页

华东交通大学理工学院课程设计报告

DO WHILE Not rsCate.EOF

stitle = rsCate(\ cid = rsCate(\%>

rsCate.movenext LOOP %>

Dim title '新闻标题 Dim content '新闻内容 Dim category '新闻类别 Dim sql 'sql语句字符串 Dim rs '记录集变量

title = Request(\

title = Replace(title,\ attpic = Request(\

rqtContent = ChangeChr(request(\替换函数rqtContent = Replace(rqtContent,\

Set rs = Server.CreateObject(\'定义sql语句,为插入新闻记录定义记录集 sql=\rs.Open sql, Conn, 1, 3

'使用AddNew和Update插入新记录 rs.AddNew

rs(\rs(\

rs(\rs(\

rs(\rs(\If attpic <> \ rs(\End If rs.Update

'释放资源,显示提示信息 set rs = nothing

Response.Write \添加成功!\

第 15 页 共 19 页

华东交通大学理工学院课程设计报告

4.6 新闻查询界面

图4-6新闻查询界面图

可以看到,新闻查询可以分为下面几种情况: (1)按发布日期查询。

(2)查询新闻标题和新闻内容中包括的文字。

在search.asp中,用于编辑查询条件的表单为Form1,它的定义代码如下:

当表单数据提交时,将执行searchResult.asp。为了验证用户录入数据的有效性,在search.asp中定义了一些函数,下面介绍这些函内容。 1.IsEmpty()函数

IsEmpty()函数的功能是判断字符串是否为空,代码如下: function isEmpty (str) {

if ((str==null)||(str.length==0)) return true; else return(false); }

参数str表示要判断的字符串,如果它为空或长度为0则返回true,否则返回false。 2.IsDigital()函数

IsDigital()函数的功能是判断字符串是否是数字类型,代码如下: function isDigit(s)

{ar patrn=/^[0-9]{1,20}$/;

if (!patrn.exec(s)) return false return true}

参数s表示要判断的字符串。变量patrn是一个正则表达式,正则表达式是由普通字符以及特殊字符组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多

第 16 页 共 19 页

华东交通大学理工学院课程设计报告

个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。正则表达式中的Execute方法对指定的字符串执行正则表达式搜索。/^表示正则表达式的开始,$/表示正则表达式的结束,[0.9]表示以0~9的数字为开始和结束,{1,20}表示长度为1~20。 3.IsInt()函数

IsInt()函数的功能是判断指定的字符串是否是整型数据,代码如下: function isInt (theStr) { var flag = true;

if (isEmpty(theStr)) { flag=false; } else

{ for (var i=0; i

if (isDigit(theStr.substring(i,i+1)) == false) { flag = false; break;} } }

return(flag); }

参数theStr表示要判断的字符串。如果theStr为空,则返回false;否则对theStr中的每个字符进行判断,如果有一个字符不是数字类型(使用IsDigital函数判断)则返回false。如果上述情况都没有返回false,则返回true。 4.IsBetween(、)函数

IsBetween()函数的功能是判断指定数据是否在两个数字之间,代码如下: function isBetween (val, lo, hi) {

if ((val < lo) || (val > hi)) { return(false); } else { return(true); } }

参数val表示要比较的数值,参数lo表示比较范围的下限,参数hi表示比较范围的上限。程序将val与lo、hi进行比较,如果val的值不在它们之间,则返回false,否则返回true。 5.IsIDate()函数

IsDate()函数的功能是判断指定数据是否是日期型数据,代码如下: function isDate (theStr) {

var the1st = theStr.indexOf('-'); else { return(true); } } }

这段程序将判断用户输入的查询条件是否为空,并使用自定义函数IsDate()验证日期是否有效。

第 17 页 共 19 页

华东交通大学理工学院课程设计报告

第5章 课程设计心得

过一个星期的设计和开发,网上新闻发布系统基本开发完毕。其功能基本符合新闻发布需求,能够完成新闻发布、新闻修改和新闻显示以及新闻评论。并提供部分系统维护功能,使用户方便进行新闻浏览和管理员对新闻进行修改、数据删除。,对于新闻同类性的问题也通过程序进行了有效的解决。

但是由于课程设计时间较短,所以该系统还有许多不尽如人意的地方,比如页面设计内容不是十分丰富,用户界面不够美观,出错处理不够等多方面问题。这些都有待进一步的改善。

第 18 页 共 19 页

华东交通大学理工学院课程设计报告

参考文献(资料)

[1] 谢希仁. 计算机网络(第五版)[M]. 北京:电子工业出版社,2008年2月 [2] 胡小强 计算机网络[M] 北京:北京邮电大学出版社2005年1月 [3] 高怡新 电子商务网站建设[M] 北京:人民邮电出版社 2011年12月 [4] 李国庆. ASP.NET程序设计项目教程[M]. 北京:北京理工大学出版社 2010年2

[5] 俞俊甫. 。

数据库原理应用教程 [M]. 北京:北京邮电大学出版社2010年7月 第 19 页 共 19 页

本文来源:https://www.bwwdw.com/article/1u83.html

Top