毕业设计(论文)-ASP+ACESS_新闻发布系统论文.doc_第1页
毕业设计(论文)-ASP+ACESS_新闻发布系统论文.doc_第2页
毕业设计(论文)-ASP+ACESS_新闻发布系统论文.doc_第3页
毕业设计(论文)-ASP+ACESS_新闻发布系统论文.doc_第4页
毕业设计(论文)-ASP+ACESS_新闻发布系统论文.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江海洋学院新闻发布系统摘要:对于一个商业网站,一个新闻发布系统是必不可少的,新闻发布系统其实可以理解为一个公告板,用来发布网站或管理员的公告信息,当然就其本意来说也可以用来转载各大网站的新闻,做一个新闻网站也未尝不可。其实现的方式也是比较简单的,其原型是留言本或BBS,也包括写入、读取、管理等功能模块,但留言本是面向浏览者的,基本上是浏览者留言给管理员看,而新闻发布系统则相反,一般是管理员发布新闻公告,给浏览者看,这其实只是权限的区别,写入、读取等功能实现方式还是差不多的。本系统套用了B/S模式,采用ASP作为开发环境,Access 2000作为数据库服务器,实现了对新闻类别无限级分类设置、静态新闻的发布修改删除,前台页面的模板自定义和生成,以及后台管理员权限和数据库的备份等一系列的功能,杜绝了浏览者直接操作数据库的可能。本论文将结合ASP和ACESS制作一个简单的新闻发布系统。将完成以下功能,新闻发布、新闻内容显示、新闻修改保存和删除以及增删管理员。关键字:新闻发布系统、ASP、ACCESSNews Release SystemAbstract:A News Release System is absolutely necessarily for a website. News Release System could be known as a call-board which is used to promulgate the message from the website and administrators. And it alsocan be used to report the news which comes from other websites. It is very easy to be a news website if you want. BBS and message board are the model of it,including writring, reading, administering and other function module. But message board is for readers. That system just sends the readers message to administrators. But the News Briefing System is opposite. The administrator release the news. Then readers read the news. In fact, they have the same way of writing and reading. This system is in the B/S model, and adopts ASP, as the development environment, ACCESS 2000 is regarded as the database server , static news of the classification of the news, template, front desk of page self-defining to turn into, and authority and backup person who shrink a series of functions of database , administrator of backstage supporter , have finished all functions of a static news briefing system, realize the course has adopted a large amount of ASP to realize the complicated logic operation to the database and server. Catch most unusual situations systematically, the front desk has stopped common reader operating the possibility of the database directly. Keywords: News Release System、ASP、ACCESS目 录第一章 引言4第二章 ASP的认识和Access的介绍51ASP的认识52 Acess数据库的介绍9第三章开发环境121. 系统平台122.开发工具123. 运行需求12第四章 需求分析131背景132.新闻发布系统的特点133.对性能的规定134.需要实现的操作功能14第五章 结构设计151 . 新闻发布模块162. 数据库连接和公用函数存放模块173. 保存添加模块174. 新闻列表模块185. 新闻内容显示模块195. 6 新闻管理模块217. 新闻修改模块228 保存修改模块239 新闻删除模块2510 管理员登录、注销模块2611 增加管理员修改增删模块27第六章 测试和结束语291测试292结束语29第七章 致谢29参考文献30第一章 引言伴随着网络的出现,网页逐渐融入人们的生活。快速及时的新闻浏览,五彩缤纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三媒体Internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活方式。制作网页是企业和个人的宣传自己的重要手段,同时也是学习者获取学习信息的重要手段。尤其是在教育领域,在素质教育与终身教育成为必然的今天,人们对信息的需求有了更新,更高的要求,而网页由于本身所具有的信息量大,传递快速,没有时空限制等特点恰好满足这种要求。所以网页也逐渐成为一种新兴的教育资源。也正是由于网络实现网站的数据信息能够进行实时交互,保证网站数据的实时性。 随着Internet的进一步发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化,使站点维护人员不得不经常修改他们的网页,特别是基于数据库驱动的Web站点更是如此,随着Internet上信息量的增多和交互性的加强使HTML显得越来越难以胜任。另一方面静态网页由于不能与浏览者进行有效交互,使人们感到越来越乏味,而不愿意再一次地进入同一站点。所以开发动态网页或动态内容成了越来越多的站点所追求目标。所谓动态内容是由每一个用户按照自己的需求发出请求而特殊制作的Web网页。 网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。站在网络时代的前夜,我们清晰地听到了网络时代的宣言:谁掌握了网络,谁就掌握了未来。新闻发布系统(News Release System)是上个世纪九十年代互连网技术发展以后才出现的技术,最初表现是解决一些网站的信息动态发布而开发,最初只是简单的发布和显示,应用对于各种不同的站点需要构建不同的系统来满足需要,而且功能十分单一,在九十年代后期,互连网技术进一步发展,网络作为新起的新闻媒介工具,其用户大大增加,对系统的要求也越来越高,新闻发布系统在这样的一个环境中提出、开发、并改进,到现在,新闻系统开发的成功案例已经不计其数,而且已经应用到各种站点上,可以说,各行各业的绝大部分的网站都使用到了新闻系统,大量的用户引发了新闻系统功能的进一步扩大和深化,给新闻系统提出了更高的要求。第二章 ASP的认识和Access的介绍1ASP的认识ASP 全称为 Active Server Pages(动态服务器主页),它是一种应用程序环境,可以利用 VBscript 或 Java Script 语言来设计,主要用于网络数据库的查询与管理。其工作原理是当浏览者发出浏览请求的时候,服务器会自动将 ASP 的程序码,解释为标准 HTML 格式的网页内容,再送到浏览者浏览器上显示出来。我们也可以将 ASP 理解为一种特殊的 CGI。对很多人来说,用ASP来创建Windows服务器平台上的动态Web网页、整个站点和基于Web的应用程序已经成为极其自然而然的方法。在浏览器地址栏中,文件扩展名.ASP同表示动态创建的网页的文件扩展名.pl或.cgi一样,已被浏览者所接受。事实上,对于在微软的操作系统上工作的Web程序员来说,ASP正在变成一种不再令人激动的技术,而仅是一种工作方式。 这种看法的改变体现了一种技术的逐步成熟。由于ASP的应用程序的数量日益增多,ASP的工具也在日益增加,同时有越来越多的第三方开发商开发出一系列基于ASP或使用ASP的附加功能模块、ActiveX服务器组件,甚至成套的“自己做( do-it-yourself )”Web站点工具。人们几乎不再关注微软公司最初使用的奇特的名字。现在ASP在行业内已经成为一个公认的名词。ASP核心可能没有很多本质上的改变,但有很多令人激动的使用方法。 ASP是如何产生的,以及ASP为什么能够在Web程序开发人员中流行。首先从了解Web的基础和动态Web页面的发展开始。把ASP与其他许多能够提供这种动态化的技术相比较,由此深入了解ASP的发展情况,同时了解Web应用程序的发展,而不仅限于了解单纯的动态Web 站点。 HTML的起源 万维网( World Wide Web,WWW )起源于设在瑞士的CERN实验室。Tim Berners-Lee及其开发小组,花费大量的时间,研究建立了一种以一定格式传输信息的方法,这就是众所周知的超文本传输协议(简称为HTTP)。该协议使用了超文本标记语言(HTML)。HTML设计简单,结构灵活,允许在Web浏览器及其他兼容的应用程序中显示文本及图像。文档的某些部分可以成为超链接,即当其被选择时,可以显示不同的页面或同一页面的不同部分。 标记语言是由特定字符分隔的基本元素,指定基本元素中所包含的文本或其他条目如何显示。例如This is some Emphasized text。HTML是一种广泛基于标准通用标记语言(Standard Generalized Makeup Language,SGML )的标记语言。SGML是描述语言的一种方法,其本身并不是用来创建网页的语言。 HTML语言从简单开始,不断增加一些附加的功能。这些新增的特性提供了更灵活的文本字体风格(例如元素),以及对输出页面布局的更多控制(如窗体和帧的使用)。 早期的网页所缺乏的是动态的内容。刚一开始时,这还不是一个问题,因为HTML的开发是为了在计算机、网络及操作系统之间显示和传送信息(特别是技术和科学信息)。这种标准化的文档仅是一种简单的文本和标记,其中的图像和其他非文本的内容以单独文件形式存放,它们可以在各种网络上自由传送。另外,由于信息的格式是固定的,其组成元素的含义也是在HTML中定义好的。对于一个“阅读器”或浏览器应用程序,用任何程序语言在任何平台或操作系统中相对来说是比较容易实现的。 只要建立这些信息网页,文本文件和图像可通过Web服务器应用程序传送给用户,Web服务器应用程序简单地从磁盘中读取它们并且把输出转换成能够在网络中传送的正确HTTP协议。在客户或用户端,浏览器接收传送到的信息流,并转换成为能够显示的页面。 HTML和HTTP除了具有跨平台特性之外,其最主要的长处就是其文档可以包含有关内容的相关信息、作者意欲表达的方式等。它可以被应用程序阅读而不一定显示出来:例如盲人可以使用特殊的程序把它转换成为语音。同样,其内容可以特殊方式显示出来,以便那些视力差或有其他缺陷的人们更容易进行访问。因此,技术界经常用“用户代理” (user agent)这一通用术语代替“浏览器” ( browser )。 动态页面的起源 对于新类型的文档内容,特别是那些设计成为允许在页面上输入信息的文档(例如HTML中等的窗体控件),开发一种能够读取这种信息并加以利用的应用程序成为必然。很明显,传递从其他应用程序中得到的内容,特别是特定类型的数据库的内容,需要一种新的方法。每次都需要重写一个基于文本的页面,对于提供实时性很强的信息当然不是一个理想的方法。 对于Web服务器来说,提供一个接口使其他应用程序能够与之相连成为一种常用的方法。通过这个接口,定制的可执行程序能够接收来自客户端的信息,包括通过点击超链接或在浏览器中键入统一资源定位符( URL )所提出的页面请求的细节。应用程序对客户端的请求能够生成相应的响应,而不是从服务器磁盘上读取文本或标记文件。从这些早期方法开始,逐渐形成一套完整的系列方法动态创建网页,以响应用户的请求或信息的变化。用于这些应用程序的接口仍然在使用,并被称为公共网关接口(Common Gateway Interface,CGI ),这是一种可用任何语言(如C语言)实现的标准。它产生于那些使用cgi-bin目录的应用程序(这里“bin”代表二进制代码,而不是文本)。早期的应用程序都是编译后的程序,通常用C或C+编写。然而这自然要求懂得C语言的编程方法,并且每当对程序做很小的文字上或标记上的变动,都必须重新编译、重新生成可执行文件,这就限制了CGI和动态页面的使用。 取而代之的是开发了一种用脚本语言创建网页的方法,这种语言就是实用摘要和报告语言(Practical Extraction and Reporting Language),或简称为Perl,它允许信息的创建者以一种非常类似于简化版C或C + +的语言编写代码。在Perl脚本中,可以“写”文本和标记,用标准输入(stdin)和标准输出(stdout )函数通过CGI与Web服务器通信,输出到浏览器。 Perl在Web上仍然是一种流行的语言,特别是在基于UNIX或Linux的系统上。然而这种语言掌握起来不是很容易,特别是对于那些没有C或C+语言基础的Web开发人员更是如此。现在,一些新的脚本语言出现了,使创建网页更加容易。我们主要看一下它们如何使开发人员的工作变得更加容易。 1. 服务器端脚本技术 对于服务器端的脚本需要用某种类型的中间应用程序,或插件程序来连接。它必须能够接受用户请求,读取并解释合适的基于服务器的脚本文件,接着创建输出页,并传送给Web 服务器,在那里作为响应发送给客户端。 在某些情况下,这个任务划分为两个部分: 一个应用程序或插件程序处理与Web服务器的往来通信(一般通过CGI )。 另一个处理解释和执行脚本。 这就是ASP中的情况,脚本引擎的使用与在其他环境下相同。 Perl是第一个流行的服务器端脚本语言,但是目前已经出现很多其他的语言。在UNIX及基于Linux的系统上,一种新的称之为PHP(Personal Home Page)的语言正变得越来越流行。还有一些语言的目标是一些特定类型的用户,例如T C L就是一种在科学环境下使复杂的数学运算简单化的语言。 2. 微软的动态页面创建技术 微软随Windows NT 3.51推出了他们的Web服务器软件Internet Information Server(IIS) 1.0。这是一个提供了很多功能的相当标准的软件,它支持CGI。然而微软也提供了另外一个接口,允许使用C和C+等编译语言生成可执行文件,使操作更加高效。这就是Internet服务器应用编程接口(Internet Server Application Programming Interface,ISAPI )。它能够提供比传统 Perl引擎和其他技术所依赖的stdin和stdou t更为广泛的对Web服务器的访问。 此后微软和其他第三方开发商推出了许多能通过ISAPI连接到IIS的应用软件,这也就是为什么ASP能够连接到IIS以及其他微软服务器端动态技术。在ASP以前,用得最广泛的是Internet数据库连接器(Internet Database Connector,IPC )。ASP为Web开发者使用微软的平台开辟了一个新的天地,这使采用数据库中的数据创建动态网页更加容易。特别是它引入了模板(template ),即包含了带有能够插入数据库查询结果的文本和标记的模板文件。 现有的(或将过时的)其他微软服务器端页面创建技术有db Web和OLE ISAPI。事实上,db Web就是OLE ISAPI的实现,而对于多数人来说,迄今只是证实了这一技术在实际应用中的不适应性。OLE ISAPI是通过特殊版本的ISAPI接口与IIS通信的一些COM对象。Web服务器软件调用COM对象中单个指定函数并以参数为用户的请求提供细节。COM对象返回的是作为字符串的页面的文本和标记,然后作为响应发送给客户端。 OLE ISAPI首创了COM对象的动态Web页面创建,为编程人员提供通过编译的Active X DLL创建动态页面的能力。然而它所使用的特定的实现和数据通信技术对于较小的任务和内部网( intranet )工作缺乏有效性和可扩展性。同时,每当改变页面的文本和标记时,也需要重新编译动态链接库。3. 动态Web页面创建方法的比较 比较动态页面创建技术是一个既困难又敏感的任务,然而理解各种接口和与之相关联的应用程序的差异性又是很重要的。当创建与Web服务器交互的应用程序时,涉及到的两个主要的问题是它们对Web服务器本身稳定性的影响,以及处理多发或并发页面请求的效率。这两个问题是相互联系的,又是相互排斥的。 应用CGI和ISAPI的编译的可执行应用程序(不是DLL文件),通常在服务器计算机上以进程外( out-of-process )方式运行,这就意味它们要作为单独应用程序运行,占有单独的与Web服务器应用程序不同的内存空间。操作系统将其作为一个单独的进程进行管理,禁止它们访问本身所占内存以外的内存。 因此,如果一个进程外应用程序失败,不会影响到Web服务器。同样,假如应用程序包含错误,企图直接写入Web服务器的内存,会因一般性保护错误停止运行。进程外应用程序也会因用户或操作系统的命令而中止,这时代码会从内存中自动卸载。 因为运行进程外程序意味着访问Web服务器内存的请求被禁止,所要求的或产生的输出结果值不能直接传送给Web服务器。所以必须执行一种跨进程调用,但这比在同一进程内访问内存要多花费几倍的时间。对于可执行文件的装载和卸载时间还有一定的影响。 相反,应用进程内( in-process )程序通常是能够使用ISAPI或OLEAPI接口的DLL (不是单独的可执行文件),因为其运行在Web服务器的内存空间中,可以直接访问Web服务器内存中的值,这可提供更快的访问和响应。然而其代码的错误或失败会影响到Web服务器。例如DLL文件中的代码直接写入包含Web服务器操作代码的内存空间,可能引起Web服务器的失败。进程外应用程序实例是Perl脚本解释器和使用ISAP I接口的.exe文件。进程内组件的实例有dbWeb、IDC以及ASP技术。然而,ASP和IIS相互连接的方式还有许多种。因此,先把其他相关技术放在一边,进一步研究ASP。 利用 ASP 生成的网页,与HTML相比具有更大的灵活性。只要结构合理,一个 ASP 页面就可以取代成千上万个网页。尽管 ASP 在工作效率方面较之一些新技术要差,但胜在简单、直观、易学,是涉足网络编程的一条捷径。它具备一个服务器端的脚本执行环境,用它可产生和执行动态的、交互的、高性能的Web服务器应用程序。 Active Server的另一大优点是代码的安全性。页面的访问者所能看到的只是服务器方的处理结果。ASP文件可以用常规的文本编辑器编辑, ASP使用VBScript、javascript等脚本语言作为开发工具,镶嵌于HTML文本中,使用将ASP的程序包含起来。当用户从浏览器向Web服务器提出请求时,Web服务器会自动将ASP的程序解释为标准的HTML格式的主页内容,用户端只要使用常规可执行HTML程序的浏览器,就可浏览ASP所设计的主页内容,因此与浏览器无关,并且保证了ASP的源程序代码不会外漏。 ASP中包括五个内置的ActiveX服务器组件和五个内置的对象:Database Access component(数据库访问组件)、File Access component(文件访问组件)、Ad Rotator component(广告轮播器组件)、Content Linking component(内容链接组件)、Browser Capabilities component(浏览器信组件)以及Request(请求对象)、Server(服务器对象)、Session(会话对象)、Response(响应对象)、Application(应用程序对象)。在所有ASP组件中,最有用的是数据库访问组件,也称为ActiveX数据对象或ADO。在站点发布数据库将使用这个组件及其中包含的对象,以完成对ODBC数据源的读写。此外,ASP技术的另一个重要特点是,程序员可以利用Java、Visual Basic、Visual C+等语言制作适应自己特殊需要的ActiveX服务器组件来扩充ASP的功能,使自己的动态网页几乎具有无限的扩充能力,这是传统的CGI程序所不及的。 总而言之ASP具有学习快、设计快的特点,不需花许多时间即可学会和快速设计出WEB应用程序。ASP的源程序码在服务器端执行,代码保密性好。集成与HTML中,无需编译链接可直接执行,而且使用文本编辑器即可设计。 2 Acess数据库的介绍在办公软件Office套件中,最为广大用户熟悉的是Word和Excel,因为它们功能强大且方便易用,更因为它们不仅可用于办公,还可用于个人写作和家庭记帐理财等。同为Office套件中一部分的Access,虽然有着同样强大的功能,但使用的人却相对少些,不像Word和Excel那样广泛。事实上,真正用过Access的用户,对其强大功能和灵活应用均称赞“不错,很好的。” Access 2000数据库管理系统是Microsoft Office 套件的重要组成部分,是Access的最新版本,可在Windows XP 环境下运行。Access适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。 Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。 表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。Access 的6种对象 Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。 表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。 查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。 窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。 报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。 宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。 模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程。 与Access 以前的版本比较,Access 新增了许多功能,字段类型增加了OLE对象和超级链接,特别是与Internet的融合,在数据库中可以直接链接到指定的Web页面或网络文件,也可以把Web页面上的表格导入到数据库。Access 可以方便地利用各种数据源,包括dBASE, FoxBase,FoxPro,Excel,Word 等。Access 增加了数据库访问的安全机制,可对表一级设置访问许可权。Access 还可以方便地利用FoxPro数据库、Excel电子表格的数据,还可以和Word混合使用,打印通用信函或信封。 Access 数据库的特点1Access是一个前后台结合的“软件”。也就是说Access既拥有用户界面(VB可以用来开发用户界面);也拥有逻辑、流程处理,即VBA语言(VB也可以用来做逻辑处理);又可以存储数据,即在“表”中存储数据。而所有这些都存储在一个 MDB 格式的文件中(当然,也可以是 MDE 等格式)。Access里面设计好界面,VB中必须建立ACCESS.APPLICATION才能调用,也就是说这基本是VBA编程,而不是VB编程。 2Access不是一种存储格式,是一种软件。要严格区分 Access 软件与 MDB 格式。以下的语句是错误的:“我用VB来开发MIS系统,数据存储在ACCESS中。”。VB下调用 MDB 格式(或 JET DB)只是调用一种格式的文件而已,并没有调用到 Access,其实官方说法叫 “VB 的 JET 应用”。另外,MDB 格式的文件也可以被其他开发工具,比如 DELPHI / PB / C / PHP / ASP / CGI . 调用。但是被调用的只是 MDB 文件,很多 ACCESS 软件所具有的功能,这些开发工具是无法调用的。3Access 中的一些对象可以被 VB 调用,但是必须在调用的机器上安装 ACCESS 这个软件(COPY一个MDB文件是不够的)或者安装额外的 ActiveX 控件。第三章开发环境1. 系统平台Web服务器软件采用IIS5.0(Internet Information Server)。客户端软件,包括单机操作系统和浏览器软件,分别选用Windows XP和Internet Explorer,数据库系统采用Access 2000 有利于方便操作。2.开发工具基于Web的系统开发工具应使开发者使用各种各样的技术来创建动态的Web应用程序,并且应是一个可视化的工具。我们采用了Dreamweaver 8.0进行开发,它是用来快速创建数据驱动Web应用程序的基于团队的开发环境,支持ASP,以ODBC连接数据库,脚本语言为简单易学的javascript或VBScript。3. 运行需求正常使用时不应出错,若运行时遇到不可恢复的系统错误,也必须保证数据完好无损,对数据的精确度、时间特性、适应性等都有一定要求,要求系统运行时能够保证正确性、可靠性、高效性、完整性、易使用性、可维护性、可测试性、复用性、安全保密性、可移植性、互联性。第四章 需求分析1背景新闻发布系统(News Release System )又叫做内容管理系统(Content Management System),是一个基于新闻发布和内容管理的全站管理系统,新闻发布系统是基于C/S模式的WEBMIS系统,本系统可以将简单的文字信息经过组织,合理有序地呈现在大家面前。当今社会是一个信息化的社会,新闻信息作为信息的一部分有着信息量大,类别繁多,形式多样的特点,新闻发布系统的概念就此提出。新闻发布系统的提出使电视不再是唯一的新闻媒体,从此以后网络也充当了一个重要的新闻媒介的功能。简单地说,新闻发布系统就是充当一个网络新闻媒介的功能,主要实现对新闻的分类、上传、审核、发布,模拟了一般新闻媒介的新闻发布的过程,通过不同权限的账号分别实现以上所说功能,当然这些功能也可以是某一个账号全部具有。随着互连网的进一步发展,网络媒体在人们心中的地位进一步提高,新闻发布系统做为网络媒体的核心系统,其重要性是越来越重要:一方面,它提供一个新闻管理和发布的功能;另一方面,现在的新闻发布要求实现与普通的用户实现交互,用户可以很方便地参加一些调查和相关新闻的评论,这一点也是其他一些媒体现在无法做到的(电视、电台等),同时,INTERNET发展到当今,可以说,只要你上INTERNET,你就会接触到新闻发布系统,新闻发布系统的用户是相当惊人的,其重要性是不容置疑的,当然这也对新闻发布系统的开发提出了更高的要求。2.新闻发布系统的特点与一般的信息系统相比较,新闻发布系统具有以下特征:1是基于C/S模式下的WEB信息系统,数据库逻辑相对简单,但数据量一般比较庞大;2 通常意义上的新闻发布系统一般用户数量巨大(特别是在中国),服务器压力大,是系统设计中必须考虑的问题之一,而一般的信息系统相对压力要少了很多,本系统因为采用的是Access 2000数据库,Access 2000数据库一般在数据达到100M以上时服务器容易崩溃,出现无法浏览或响应超时等不良状况。所以一般适用于大型企事业单位内网的新闻发布和通知发布。3 本系统是一个开放式的系统,前台浏览无须验证。所以任何人只要点击网站就可以浏览新闻了。而新闻的发布修改及删除则需要管理员的权限了。3.对性能的规定1 操作应该方便、灵活。2 系统应有基本的稳定性。3 系统应有较高的安全性。4 速度上要求前台要能够较快地反应用户,后台操作不能出现超时现象。4.需要实现的操作功能 1新闻的发布,作为新闻发布系统,首先必须能够由管理员发布新闻,如果没有新闻这个操作对象,其他一切都无从谈起。 2新闻的浏览。这个功能是该系统的根本需求,能够让普通的浏览者(非管理员)只要链接到该系统的新闻列表的网址,就可以浏览到新闻标题的列表及发布的时间,再点击标题就可以看到新闻的具体内容了。实现以上操作是无需登录的。 3新闻的修改和删除。新闻发布系统必须具备起码的可维护性,所以新闻必须是可以修改和删除的。这些操作是需要管理员权限的。而且在修改新闻时是可以选择是否将新闻的时间也一并改为管理员修改新闻的时间。 4管理员的增加和删除。新闻是具有击极高的时效性的,但是我想没有任何一个管理员能做到一周七天每天二十四小时在线来确保每条新闻的及时准确地发布,自然就需要另外的管理员。所以需要增加和删除管理员的权限。这些功能是需要特定某个管理员的权限(只有他的ID登录系统才认可)才可以实现。第五章 结构设计一条新闻包括标题、新闻内容和发布时间,当然也可以加入信息发布者等内容。而一般新闻公告不止一条,需要一个页面列出新闻标题(list.asp),浏览者单击相应标题进入详细内容浏览页(display.asp),这两个页面已经实现了客户端浏览新闻的基本功能;而子个完整的新闻发布系统,还需要完善的后台管理系统(admin.asp);此外系统除了实现最基本的新闻发布(del.asp)功能外,还需要具有修改(modify.asp、saveModify.asp)、删除(del.asp)等功能;出于信息安全以及权限管理的考虑,还需要一个管理员登录页面(login.asp)来验证管理员身份,同时还需要一个注销页面(logout.asp)。系统的功能结构如图1所示:图1 新闻系统文件结构图数据库采用Access数据库,建立一个表news,包含id、title、content、addtime等4列,其定义和含义如表1所示。表1 News表的结构列名数据类型说明Id自动编号主键Title文本新闻标题Content备注新闻内容Addtime日期/时间发布时间1 . 新闻发布模块新闻发布模块的界面如图2:图2 新闻发布界面新闻发布模块的文件为add.asp(代码略)。他主要是一个addform的表单,加上了JavaScript表单数据验证功能。其实这个文件可以是一个html文件,不需要ASP代码,但发布新闻属于管理模块,只有管理员身份才能进入并操作,所以需要在开始时加上下面这段管理员权限代码验证管理员是否登录。%判断是否管理员权限if Session(open)True then Response.Redirect login.aspend if%这里用一个session变量open值的真假来判断是否登录,如果为真就执行下面代码;为否就转向login.asp页面要求用户登录,这样就保证了管理权限。 我在这里对新闻的标题进行了限制,不能超过30个字,如果超过将会自动报错。而新闻内容则没有进行字数的限制。2. 数据库连接和公用函数存放模块写下面模块之前要先写一个存放数据库打开、关闭函数的include文件,以方便在后面需要数据库操作的模块调用,并且将几个常用的公用函数也放近来,以减少代码重复率。3. 保存添加模块新闻发布模块中表单addform的action指向saveAdd.asp文件,就是以这个文件保存添加操作,其代码如下所示:由于已经在add.asp里对表数据做了验证,因此在存储过程里做些简单的处理就够了,然后将新闻写入数据库,最后转向list.asp。当然现在还没有写list.asp,填写好符合要求的标题和内容单击“提交”按钮后浏览器会提示找不到该文件,但数据已经加入到了数据库中,打开数据库,查看一下news表,数据已经存在了。4. 新闻列表模块接下来就写list.asp,这个模块相当于论坛里的帖子列表,从数据库里读取数据(包括新闻标题和发布时间),然后在页面中列出,这里就需要用到分页函数(参见conn.asp文件)了。分页函数需要传入4个变量allpages(总页数)、viewpage(当前页数)、pageurl(调用文件的地址)、pp(最多显示页码数,当记录和页数很多的话,页码不能全部显示出来,否则会破坏页面结构),而allpages、viewpage所对应的就是Recordset对象里的Pagecount和AbsolutePage值,接下来的代码其实是控制显示最多页码数。新闻列表模块其界面如图3所示:图3 新闻列表界面5. 新闻内容显示模块当浏览者单击一个标题时,链接到display.asp查看详细内容,同时传递了该记录的id,id是这个数据库的主键,处理同一个记录时,都要通过id来传递联系.新闻内容显示模块(display.asp):新闻显示     发布时间:这个模块的显示新闻内容功能调用了encodehtml()函数,其运行界面如图4所示: 图4 新闻内容显示界面5. 6 新闻管理模块admin.asp是管理首页,该页面结构和list.asp差不多,主要是在标题后面加上了修改、删除两个超链接按钮,也通过id传递值,分别链接到相应页面进行处理。管理页面还有权限代码,以避免不法用户修改数据。其界面如图5所示。图5 新闻管理界面7. 新闻修改模块这个模块基本上和发布模块一样,只不过修改模块时需要事先传入一个id值,从数据库中找出相应的记录,显示在表单上,这时表单里的value值就是相应字段的值,而发布时表单value值是空的。同时修改模块也需要一个存储修改的处理(saveModify.asp),所以除了递交title、content字段外,还需要递交id值,这个值与从admin.asp传过来的id值一致。新闻修改模块的界面如图6所示:图6 新闻修改界面8 保存修改模块保存修改也跟保存添加模块相似,只是多了一个id值,先找到该id值,然后更新,详细代码如下:保存修改模块(saveModify.asp):这里的时间项我加了一个选择,是否在修改更新新闻内容的同时也更新发布时间为修改的时间。界面如图7所示:图7 新闻修改界面9 新闻删除模块这个模块的代码十分简单,通过传入的id值找到相应的记录,再删除。新闻删除模块(del.asp):其界面如图8所示:图8 新闻删除界面10 管理员登录、注销模块前面已经讲到需要验证管理员身份才能进入管理页面进行管理,所以还需要一个管理员登录模块。先在数据库里建立个ad

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论