新闻发布系统
的有关信息介绍如下:新闻发布系统
【开发背景】………………………………………………………………………
【摘要】…………………………………………………………………….……….
【前言】……………………………………………………………………………………
第一章应用软件的讨论(从静态到动态的飞跃)…………………………………………
1.1动态服务器网页(ASP)的出现………………………………………….…………
1. 2ASP的特性……………………………………………………………………
1.3ASP的功能…………………………………………………………………….………
1.4ASP与静态网页的区别………………………………………………….…….…
1.5编辑和运行ASP文件的环境……………………………………………….………
第二章系统分析与总体设计…………………………………………………………………
2.1功能介绍……………………………………………………………………………………….
2.2总体布局…………………………………………………………………………………..
2.3数据库结构及实现………………………………………………….…………………
第三章模块设计与实现………………………………………………….………….
3.1、新闻显示………………………………………………………….………………….………
3.2、新闻浏览…………………………………………………………….……………..………….
3.3、新闻搜索……………………………………………………………..…………..……..…….
3.4、新闻显示页面………………………………………………………………….…………….
3.5、新闻版块管理…………………………………………………………………….………….
3.6、新闻信息管理……………………………………………………….……………………….
【开发背景】
近年来,Internet技术得到迅速的发展,已经成为计算机产业的一个技术热点。促成Internet高速发展的因素之一就是Web技术。Web技术由最初的静态HTML发展到动态网页技术DHTML,CGI(Command Gateway Interface),脚本语言与ASP(Active Server Pages)后来居上,并且大有取代CGI的趋势。Web已经不再局限于仅仅提供大量的信息服务,Web技术的发展使得那些具有交互动态页面、有条理的数据库查询、丰富信息内容的页面成为最吸引人的网页。浏览Web有着执行Windows程序一样的感觉和操作性。随着Internet技术的发展,它已经成为一种操作平台,为用户提供强大的服务,例如网上购物,网上电子商务,社会信息数据库服务等。
作为计算机发展最迅速的领域之一的数据库技术,已经形成了一整套独有的理论,并广泛地应用于人们的生产和生活中。数据库技术与网站的结合是当今Web技术的一个热点。有了数据库的支持,可以扩展网页的功能,可以方便地设计出交互式页面,可以构造功能强大的后台管理系统,可以为网站的更新、维护提供极大的方便。因此,作为网络开发者或管理者,数据库知识是必不可少的。
在当前社会,信息已成为一种隐型的财富,人们对信息的需求再也不是局限于单纯的电视、报纸等大众途径。随着Internet在中国的发展日新月异,人们在日常生活中也越来越多地使用这项新技术来为自己的工作和生活服务,人们通过网络来获取信息的需求越来越大。基于此种考虑,网络开发者们提出了一种“基于WEB的新闻发布系统”,该系统能够实现在线更新最新新闻、设置新闻分类导航等功能,此外,网站管理员也可在线对后台进行管理,例如新闻的修改、删除等操作,以保证新闻的及时、准确性。由于篇幅有限,本人不能在此做一一详细的说明。
【摘要】
本篇论文详细讲解了利用ASP、Microsoft Access2007、Dreamwear8等软件工具制作“基于WEB的新闻发布系统”的过程。并简要介绍了Internet及Web技术的发展,本篇论文主要分为六个部分,依次为:网站的系统设计、数据库的设计与实现、后台系统和数据库的配置、前端网络的开发与设计、开发难点与技巧、系统的发布与维护。其中网站的各个部分还作了详细介绍,待您仔细阅览。
关键字:ASP、MicrosoftAccess2007、Dreamwear 8、基于WEB的新闻发布系统、系统设计、数据库的配置、前端网络……
【前言】
本课题的主要任务是建造一新闻发布网站,整个课题的设计工作分三步进行,首先是相关资料的收集和与相关人员的沟通和交流,随后是网站的实质性设计,最后是网站的测试工作。。网站的图片资料及其各种新闻信息等资料由网络提供,网站的网页主要由Dreamwear8结合HTML语言设计,其中后台数据库为Microsoft Acess 2007,网页的交互用ASP网页和数据库的链接采用VBScript脚本语言,整个系统以WindowsXP+IIS作为Web服务器。
在这个项目中,我对课题的要求进行了详细的研究,并查阅了大量的资料,然后提出了设计方案。系统分为前台和后台两部分,前台主要作用是浏览新闻、管理员登录、查询、修改、推荐、等。后台主要作用是新闻系统管理。采用动态网页及数据库相结合的方法来进行设计,鉴于ASP在设计动态网页上的优势地位及其对数据库的良好支持,因此选择它来制作动态页面。由于本系统不是大型网络系统,因此采用了操作简单明了并且易于管理的Microsoft Access数据库作为系统后台数据库。
在本课题的设计过程中,主要应用的网络编程语言有ASP语言、HTML语言,Microsoft Access数据库系统等。其关键是ASP与HTML相互结合、互相嵌套,并利用ASP的相对路径链接访问Microsoft Access数据库。其中的重点是在动态网页中对数据库的访问与管理,而此问题也恰恰是本系统的难点。
现阶段我国已经步入了市场经济时期,随着网络技术的飞速发展,Internet用户的数量也与日俱增,许多公司及企业都将目光投向了网络这个商机无限的领域,许多公司以在其他网站加入广告或建立公司网站的形式来吸引更多的顾客,而新闻发布系统是几乎所有网站都不可或缺的一个重要组成部分,有人说,“现代社会,信息就是财富!”所以说本课题的研究在信息交流领域有其一定的价值。
综上所述,本课题的研究对于了解网络编程、构建个人或商业网站都有较大的帮助,是步入网络时代必不可少的组成部分。
第一章应用软件的讨论(从静态到动态的飞跃)
1.1动态服务器网页(ASP)的出现
在Web诞生之初,所有的网页都是依靠超接的。人们可以从一个网页方便地连接到另外一个网页上。这些网页是事先编好并存放在Web的服务器上的,Web服务器仅需要将这个网页取出,然后按照超文本传输协议(HTTP)规定的方式传送该浏览器,浏览器把这个网页按预先编排好的格式(使用最多的是HTML格式)呈现出来。
但是,这样的网页只是静态的。这个问题导致了CGI(Common Gateway Interface,公共网关接口)的产生。 CGI是一个公共的界面,它规定了浏览器、Web服务器和服务器的程序之间数据交换的格式。这个程序就是通常所说的CGI程序,它可以由任何一种程序语言(如C/C++、Perl、Visual Basic、TCL等)编写。事实上,CGI程序是一个可执行程序,它必须通过编译器编译并连接成可执行代码后才可以工作。
CGI不但编程复杂,修改后还要重新编译,并且很浪费系统资源,随之而来的ISAPI是另一个解决方案。ISAPI也遵循CGI标准,它不但可以生成动态的页面,甚至可以作为过滤器放置到你的Web服务器上,处理所有的WEB访问及应答请求。但是,ISAPI程序设计更加复杂,而且安全性较差。
Asp(ActiveServerPages,动态服务器网页)出现解决了这些问题。ASP存取数据的方法遵循CGI标准,但它大大简化了编程方法。只要在Web服务器上嵌如对应的ASP解释器,可以使用诸如VBScript、JavaScript或者PerlScript等编写动态的ASP网页。这些网页全部都是解释执行的,你可以修改一个动态网页,无须任何编译器就可以直接发布到Web服务器上。
1.2 ASP的特性
Active Server Pages就是用服务器端脚本、对象和组件扩展了的标准HTML页。它具有3个重要特性:
1、Active Server Pages可包含服务器端脚本。将服务器脚本含在Active Server Pages中就可以用动态内容创建网页。
2、Active Server Pages提供了几种内置对象。在Active Server Pages中使用内置对象可以使脚本功能更强,在其他方面,这些对象可使你从浏览器中检索或向浏览器发送信息。
3、使用附加组件,可以扩展Actire Server Pages。Active Server Pages可以同几个标准的服务器端ActiveX组件捆绑在一起,这些组件使你可以处理数据库,发送EmaU或访问文件系统。
Active Server Pages是编写Web服务器程序的最新利器。它是一个开放式的无须进行编译的应用程序环境。它提供了CGI程序和脚本的灵活性,同时不会使性能显著下降。与CGI不同的是,ASP在服务器的进行内运行,是多线程的,可以进行优化来处理大量用户。它将IDC的简单性和ISAPI的灵活性综合在了一起。ASP比CGI和Perl脚本编写系统具有优势,它把HTML的简单性和脚本编写,以及Active服务器组件等常见工具组合在一起,用以创建动态的和强有力的网站。
ASP代表了微软公司开发技术的一个新发展。 ASP允许开发者存储他们的HTML代码和单个文件中的脚本化代码。ASP支持Open Script接口,这样就可以使用遵守这个标准的任何脚本编写语言。支持Open Script的语言包括VBScript和Jscript,甚至是Perl Script。这些脚本可以执行应用程序逻辑,并能够调用软件组件来执行特殊的任务,例如数据库查询、文件输入/输出(I/O)、业务规则和工作流。
ASP技术有它自己的对象模型,再加上驻留在同一文件之中的HTML和脚本这一事实,才使得ASP比HTX/IDC更为强大。
1.3 ASP的功能
使用Active Server Pages可以完成下面的工作:
1、产生动态网页。在一天中的不同时间,或对不同用户,Active Server Pages可显示不同的内容。
2、处HTML表单的内容。使用Active Server Pages可以获取并对输HTML表单的数据作出反应。
3、创建数据库驱动的网页。Active Server Pages可以从像Microsoft SQL Server之类的数据库中获取现存数据或插入新数据。
4、跟踪用户会话。从用户到达你的网站直到其离开,可以用Actire Server Pages储存其信息。
5、创建可搜索网页。与Microsoft Index Server或Microsoft SQL Server全文检索一起使用时,用Active Server Pages可创建网站的搜索引擎。
6、检索不同浏览器的功能。Active Server Pages可检索浏览器的支持特性并显示适合不同浏览器的内容。
7、发送并接收电子邮件。Active Server Pages可自动向用户发送并接收发送到网站的电子邮件。
8、将定制组件同网站结合在一起。用Microsoft Script Componts,Microsoft Visual Basic或Microsoft Visual C++创建的用户服务器端组件可以扩展Active Server Pages脚本。
任何一个Web服务器,只要内嵌ASP解释程序,就可以支持ASP编写的动态网页。一般来说,我们使用的都是基于WindowsNT服务器上的Internet lnformation Server(IIS)。
IIS支持虚拟目录。我们可以通过“服务器属性”对话框中的“目录”标签管理虚拟目录。建立虚拟目录对于管理Web站点具有非常重要的意义。因为虚拟目录隐藏了有关站点目录结构的重要信息。在浏览器中,客户通过选择“查看源代码”,很容易就能获取页面的文件路径信息。如果在Web页中使用物理路径,将暴露有关站点目录的重要信息,这将容易导致系统受到攻击。所以IIS的支持虚拟目录的功能就大大的提高了系统的安全性。
1.4 ASP与静态网页的区别
Active Server Pages改变了这一切,在IIS仍然支持静态HTML主页的前提下,利用Active Server Page可以根据用户要求在Web Server上建立新的主页。
为了便于理解它和支持静态主页的区别,我们将它分成以下步骤:
一个用户在浏览器的网栏中添入 Active Server Page文件名称,并敲回车键触发这个Active Server Page的申请。浏览器将这个Active Server Page要求发送给IIS。Web Server接收这个申请要求并根据其.asp的后缀意识到这是个Active Server Page要求。Web Server从硬盘或者内存中接收正确的ASP文件。Web Server将这个文件发送到一个叫做ASP.DLL的特定文件中。
Active Server Pages文件将会从头至尾被执行并根据命令要求生成相应的静态主页。HTML主页将被送回浏览器。用户浏览器解释执行HTML主页并显示在用户于浏览器上。Active Server Pages技术经过不断的改进,其功能越来越强大,已经被越来越多的公司认可,今天Internet上很多最成功的商业网站都是利用Actire ServerPages创建的。由于ASP的技术的种种优点,所以本网站决定采用ASP技术进行制作。在现在的互连网上,人们上网可以获取最新信息。如新闻、招商、论坛、娱乐等各种各样的信息,实现足不出户,就可以了解世界的梦想。
1.5编辑和运行ASP文件的环境
编辑和运行ASP文件需要一定的环境条件,用户必须满足这些条件才可建立ASP的开发环境。
ASP文件是以纯文本格式保存的,只要使用普通的文本编辑器,如Windows中的记事本或写字板就可进行编辑,然后将其存为ASP文件即可.当然,使用一些工具软件,如Visual InterDev等来创建ASP文件将会更加方便快捷.要运行ASP程序,必须在NT服务器中安装IIS(因特网服务器),或在Windows95/98/2000操作系统中安装PWS(个人网络服务器),或者在NT工作站中安装Peer Web Server.运行ASP程序的硬件要求:CPU:只要能运行相应的操作系统即可.但建议使用速率比较快的CPU,如PIII以上的CPU。硬盘空间:至少需要40MB。内存:16M以上
第二章系统分析与总体设计
2.1功能介绍
新闻发布系统是一个完整的网站中的一个组成部分。比如:某大学的主页上,设置一个新闻发布模块,原来及时发布本校有关的各种新闻事件。这种小型的新闻发布系统使用十分普遍。
本系统主要分为新闻显示模块和新闻管理模块。
1、新闻显示模块功能设计
显示模块为用户提供友好的操作界面,提供方便用户浏览网站的功能。该模块又可以详细划分以下功能区
(1)最近更新
该功能区显示最近添加到数据库中的新闻,最新的显示在最上面,稍晚的显示在下面,按照新闻添加到数据库的时间的降序排列,保证用户在该区域看到的第一条新闻是最新的。该功能区显示的新闻不是显示新闻的详细信息,而是与大多数网站的做法相同,仅显示该新闻的标题,新闻添加的日期和时间,同时该新闻标题显示为超链接形式,用户只需要点击该链接就可以浏览新闻的具体内容。
(2)新闻详细内容显示
该功能区显示新闻的详细内容,包括新闻的标题、作者、新闻发布的时间、单击次数和新闻的详细文字内容及图片信息。
(3)推荐新闻
该功能区显示管理员指定为推荐的新闻条目,显示格式与“最近更新”相同,单击新闻标题超链接就可以浏览新闻的具体内容。
(4)热点新闻
该功能区显示用户单击频率较高的新闻,以单击频率的降序排列,显示格式与“最近更新”相同,单击新闻标题超链接就可以浏览新闻的具体内容。
(5)更多新闻
以上功能区只显示了所有新闻的一部分内容,其他新闻可以通过其他两个功能区访问。一个为“更多新闻”功能区。可以通过最近更新、推荐新闻功能区右下方的“更新新闻”超链接进入。
更多新闻区,按照新闻类型进行分类,归入不同的版块,用户可以根据需要和兴趣有选择地进行浏览。
(6)新闻浏览
访问所有的新闻还可以通过“新闻浏览”功能区访问。该功能区的功能与“更多新闻”功能区相同,同样以版块对所有的新闻进行分类,单击每个分类,能够列出该版块所有的新闻条目,继续单击可以浏览新闻的详细内容。
2、新闻管理模块功能设计
管理模块是供系统管理员使用的,允许管理员对新闻进行添加、更新、删除等操作。该模块又可以详细划分以下功能区。
(1)新闻版块管理
管理模块是供系统管理员使用的,允许管理员对新闻进行添加、更新、删除等操作。该模块又可以详细划分以下功能区。
(2)添加新闻
该功能区用于向数据库中添加一条新闻,添加的内容包括新闻标题、新闻所属的版块、是否标记为推荐、新闻是否包含图片路径信息、新闻的文字内容、新闻的来源、新闻的作者。这些内容在数据库中被标识为一个个字段,在新闻显示模块中,新闻的显示就是从数据库中读取添加的新闻的详细信息,并呈现出来。
(3)修改新闻
该功能区用于对前一功能区添加的新闻进行修改,即对新闻所有的字段可以修改,修改的结果保存到数据库中,从而实现对新闻具体信息的修改。
2.2总体布局
新闻发布系统主要分为新闻显示模块和新闻管理模块。新闻显示模块包括最近更新、推荐新闻、热点新闻、更多新闻、新闻浏览;新闻管理模块包括新闻版块管理(管理员登陆/修改和删除版块/添加版块)、添加新闻、修改新闻。总体结构如图1.1所示
图2.1系统的总体结构
2.3数据库结构及实现
本系统简单,数据量小,故采用Access数据库,共创建如下3个数据表格。
●admin:存储系统管理员信息的数据表,包括管理员的登录名和密码。
●bankuai:存储新闻的版块分类信息。
●new:存储新闻的具体信息,包括新闻标题、新闻内容、新闻所属版块类型、新闻作者、是否为推荐、单击次数、是否带有图片、图片的路径、新闻的日期信息。
数据库及数据表格创建的操作步骤如下。
(1)创建数据库
首先启动Access程序,新建一个空白数据库,命名为news.mdb。
(2)创建admin数据表
在news.mdb数据库窗口的左侧的对象栏内单击“表”图标,在窗口右侧选择“使用设计器创建表”,在弹出的数据表界面设计窗口中设计admin表的字段和属性,如图2.2所示
图2.2设置admin表的字段名称和数据类型
admin数据表存储管理员的用户名username字段和密码passwd字段,数据类型都为文本类型,设置自动编号为主键。
(3)创建bankuai数据表
使用表设计器创建bankuai数据表,用于保存新闻分类的版块信息,各个字段、数据类型和说明如图2.3所示
图2.3 bankuai表字段名称和数据类型
(4)创建new数据表
使用表设计器创建new数据表,用于存储新闻的详细信息,各个字段、数据类型和说明如图2.4所示
图2.4 new表字段名称和数据类型
New数据表中的各字段的说明如下。
●nid:表示新闻条目的id,类型为自动编号。
●title:表示新闻的标题,类型为文本。
●content:表示新闻的具体内容,类型为备注。因为开发的新闻发布系统比较简单,新闻条目的内容较少,使用备注类型足够保存新闻信息。
●typename:表示新闻所属的版块信息类型,类型为文本。
●zuozhe:表示新闻的作者,类型为文本。
●tuijian:表示新闻是否为推荐的新闻,类型为是/否
●Nfrom:表示新闻的来源和出处,类型为文本。
●hits:表示新闻条目的单击次数,类型为数字。
●selectpic:表示新闻是否有图片,类型为是/否。
●picurl字段:表示图片的路径,类型为文本。
●dateandtime字段:标书新闻的具体日期,类型为日期/时间。
创建完数据库后,可以使用Dreamweaver创建重点和配置服务器。配置完重点后,可以连接数据库。
第三章模块设计与实现
在第二章中已经完成了功能模块设计、网站的布局、数据库设计等基础性的工作,犹如盖房子,先打好地基,然后才能在地基的基础上创建房子。接下来使用Dreamweaver和Access相结合的技术,按照模块划分,依次制作各模块
3.1新闻显示
1、首页(index.asp)
本新闻发布系统的首页显示效果如图3.1所示
图3.1系统首页效果图
网站表示和导航位于首页中的顶部,由于在其他模块,比如新闻浏览、新闻版块管理、新闻信息管理中,标识和导航也同样存在,而且内容是系统的,为了提高代码的重用性,所以将这些内容放入油锅单独发文件head.asp中,在其他网页中调用即可。这是asp编程中经常使用的一种方法。改head.asp文件的效果如图3.2所示
图2.2网页头部的效果
首页中,除了网页头部外,主要由4部分组成,包括最近更新、推荐新闻、热点新闻、站内搜索。各部分的详细内容和设计过程如下
这些内容和步骤都会涉及到数据库的操作,并且在Dreamweaver中进行操作前需要首先建立站点,然后应设置数据库连接,在Dreamweaver的【应用程序】面板下的【数据库】选项卡中,单击加号,选择【数据源名称(DSN)】命令,如图3.3所示
图3.3设置数据源
弹出【数据源名称】对话框,在【数据源名称】的下拉列表中选择需要的数据源,如图3.4所示
如果数据源不存在,可以单击【定义】按钮,打开系统【ODBC数据源管理器】对话框,在【系统DSN】选项卡中【添加】按钮,添加系统数据源,如图3.5所示
图3.4选择数据源
图3.5添加系统DNS数据源
添加Microsoft Access数据源,定义数据源名称,并选择前一节我们定义的数据库文件,如图3.6所示
图3.6添加Access数据库
单击【确定】按钮,返回【数据库名称】对话框,定义连接名称为“connection”,在【数据源名称(DSN)】中选择我们刚刚创建的“data”数据源,然后单击【测试】按钮,弹出如图所示的对话框,说明数据库连接创建成功。这样,使用Dreamweaver就可以操作数据库了。
2.最近更新
最近更新的新闻所呈现的为最近更新的新闻条目,按照时间降序进行排列
操作步骤如下
(1)首页提供浏览最近更新的新闻的功能。选择“插入”工具栏中的“数据”选项卡,单击“记录集”按钮,设置记录集Recordset1的相关选项,如图3.7所示。
(2)设置重复区域
绑定到记录集后,将新闻的标题、上传日期和时间显示在页面上,如图3.9所示
图3.9显示新闻标题和时间
选择重复区域后,单击重复区域按钮,设置重复区域显示为10条记录。如果用户想浏览更多新闻信息,可以单击后面的“更多新闻”超链接。
3.推荐新闻
推荐新闻与最近新闻的设置步骤相似。首页绑定记录集,再设置重复区域。对于推荐的新闻在数据库中根据new数据表中的tuijian字段的状态决定。在输入新闻时,管理员输入是否设置为推荐;同时,还按照时间进行降序排列,保证最新的推荐新闻显示在最上面。
(1)绑定记录集,在弹出的【记录集】对话框中选择“高级”模式,填写SQL语句为:SELECT *
FROM new
WHERE tuijian = true
ORDER BY dateandtime DESC
单击【确定】按钮即可
(2)设置重复区域
绑定到记录集合后,将新闻的标题、上传时间显示在页面上,与设置“最近更新”新闻一样,选择重复区域后,单击重复区域按钮,设置重复区域显示为10条记录。如果用户想浏览更多的新闻信息,可以单击后面的“更多新闻”超链接。
4.热点新闻
热点新闻是统计用户单击新闻的次数,根据新闻单击的次数进行降序排列。将用户浏览次数最高的新闻标题显示在页面最上方。
操作步骤如下。
(1)选择“插入”工具栏中的“数据”选项卡,单击按钮,设置记录集的相关选项。绑定new数据表格,按照hits字段进行降序排序,如图所示
(2)设置重复区域
绑定到记录集合后,将新闻的标题绑定在页面上,选择重复区域后,单击重复区域按钮,设置重复区域显示为10条记录。
3.2新闻浏览
当用户单击“更多新闻”超链接时,进入新闻浏览页面,可以对新闻进行分类浏览。
1、分类浏览(liulan.asp)
该页面分为左右两个部分,左侧部分呈现新闻版块分类的列表,右侧部分呈现所对应新闻版块的新闻,按照时间顺序进行降序排列,如图3.11所示
图3.11分类浏览页面
2、显示新闻分类列表
页面左侧的分类列表,呈现新闻版块分类。分类信息存储在bankuai数据表中,绑定数据集,读取bankuai数据表中的所有信息。
操作步骤如下。
(1)选择“插入”工具栏中“数据”选项卡,单击按钮,绑定数据集,设置如图3.12所示
(2)设置左侧表格中的动态文本,显示bankuai数据表格中的type字段。以无序列表形式显示。同时,为该bankuai动态文本添加超链接。连接地址为:
该超链接的地址为liulan.asp,就是本身页面,但是在链接的过程中传递不同的参数,typeid=<%= (Recordset1.Fields.Item(“typeid”).value)%>,这样在单击超链接后,重新更新该页面,使右侧的信息获得更新。
图3.12绑定bankuai表
(3)设置重复区域
设置完超链接后,选择该列表选项为重复区域,在弹出的【重复区域】对话框中,选择显示所有记录,如图3.13所示
图3.13设置重复区域显示所有分类列表
这样,所有的新闻版块分类信息都将显示在左侧区域。
3、显示每种类别的新闻
Liulan.asp页面根据新闻版块分类将不同类别的新闻显示在右侧的表格中。
操作步骤如下
(1)数据绑定显示该新闻版块的新闻
选择“插入”工具栏中“数据”选项卡,单击按钮,选择【记录集】对话框中的“高级”选项,设置记录集的相关选项,如图3.14所示
设置SQL查询语句为:
SELECT *
FROM new
WHERE typeid = MMColParam
ORDER BY dateandtime DESC
SQL语句表示对数据表new进行查询,查询条件为typename字段的值为参数MMColParam,并且按照时间进行降序排列。
单击中间的【编辑】按钮,设置参数如下:
名称:MMColParam
类型:Text
值:Request.QueryString(“type”)
默认值:24
设置MMColParam参数为Request.QueryString(“type”),也就是在新闻列表超链接中>传递的参数。
(2)显示新闻版块信息和新闻总数
在显示新闻条目部分的顶部,显示“您现在浏览的为{Recordset2.typename},共有{Recordset2_total}条新闻”,其中显示的动态信息为:
<%=(Recordset2.Fields.Item(“typename”).Value)%
表示显示新闻的版块信息。<%=(Recordset2_total)%>表示显示此版块新闻的总条目数。
(3)设置重复区域
在页面的右侧,插入一个一行两列的表格,在单元格中显示新闻的标题和新闻发布的时间。并设置新闻标题为超链接,链接代码为:><%=(Recordset2.Fields.Item(“title”).Value)%>.链接URL为xianshi.asp,传递Recordset2的nid字段作为参数,显示对应的记录,如图3.15所示
图3.15显示新闻版块信息
选中表格的一行,设置重复区域显示10条记录。
(4)添加导航条
将鼠标放置在重复区域的下方,在“插入”工具栏中选择“数据”选项卡,单击按钮,为记录集进行分页和添加记录集导航条。在下拉列表选项中,选择【记录集导航条】,在弹出的【记录集导航条】对话框中,设置【显示方式】为“文本”,单击【确定】按钮,则在重复区域的下方出现设置的导航条,如图3.16所示
实际网页中导航条的显示效果如图3.17所示
3.3新闻搜索
在新闻的首页提供用户进行新闻搜索的功能,用户在文本框中输入要搜索的新闻的关键字,单击【搜索】按钮,则在search.asp页面上显示出符合条件的相关的新闻条目。页面效果如图3.18所示
操作步骤如下
(1)设置表单
在网页上方插入一个表单,表单中设置一个文本框,两个按钮。用户在表单中输入查询的新闻的关键字,单击【搜索】按钮进行搜索,或者单击【取消】按钮进行重置
表单代码如下所示
(2)设置记录集
选择“插入”工具栏中的“数据”选项卡,单击按钮,设置记录集的相关选项,
记录集绑定到new数据表格,显示新闻信息。在筛选选项中,设置筛选的字段为content,包含表单变量key。并且按照时间的降序进行排列。
绑定完数据集合后,将数据表格中新闻的名称和新闻发布的时间显示在页面上,选中表格的行设置重复区域。操作与新闻浏览页面的操作步骤相同。
(3)显示新闻总数
在search.asp页面,位于搜索到的新闻条目的顶部,首先显示工有多少条满足条件的新闻,绑定total record字段到网页上,即在网页上显示“共有{Recordset1_total}条新闻”。
(4)设置记录集合不为空的显示效果
选择所设置的重复区域,单击“插入”工具栏中“数据”选项卡的按钮,在下拉菜单中选择【如果记录集不为空则显示】。
单击【如果记录集不为空则显示】后,弹出一个设置【如果记录集不为空则显示区域】对话框,选择相应的记录集合即可,如图所示设置该操作的目的是在查询记录集合时,存在记录集为空的情况。俄国记录集不为空,则显示新闻列表,如果为空则显示其他信息。
(5)设置记录集合为空的显示效果
在显示新闻信息的信息表格的下方添加文本“没有相关新闻,请重新查询!”。选择该文本,单击工具栏中的“显示区域”按钮,在下拉列表中选择“如果记录集为空则显示”命令。在弹出的对话框中选择记录集“Recordset1”,单击【确定】按钮即可。
3.4新闻显示页面
在首页中所显示的胃“最近更新”、“热点新闻”、“推荐新闻”版块中所呈现的新闻的标题和新闻发布的时间。同样,在新闻浏览页面(liulan.asp)和新闻搜索页面(search.asp)所呈现的也是新闻的题目和新闻的发布时间。当单击这些新闻的标题超链接时,可以跳转到新闻显示页面,更加详细地显示新闻的具体内容
操作步骤如下
(1)设置超链接。
以首页(index.asp)为例,为标题名称设置超链接。在代码窗口中为动态文本{Recordset1.title}添加超链接。超链接为:
><%=(Recordset1.Fields.Item(“title”).Value)%>
该超链接的地址为显xianshi.asp,传递记录集Recordset1的nid字段参数,这样在新闻显示页面xianshi.asp页面,通过nid参数从数据库表new中取出相应的记录,显示在页面上。
(2)参照前面的操作,在xianshi.asp页面绑定记录集Recordset1,设置如图3.20所示.
(3)新闻显示页面(xianshi.asp)
绑定到记录集合后,将新闻的标题、新闻的作者、中文上传时间、新闻点击次数以及新闻呢内容绑定在xianshi.asp页面上,在记录集Recordset1中,通过将URL参数nid与new数据表中的nid字段进行对应,作为筛选条件,在xianshi.asp页面,通过传递的nid参数从数据库表new中取出对应的一条记录的标题、作者、时间、单击参数、内容、图片信息,显示在该页面上。需要注意的是,有点新闻是不带图片的,所以使用一个if语句进行判断,代码如下
<%
If(Recordset1.Fields.Item(”selectpic”).Value=true) Then%>
”
Name=”img” width=”220” height=”220” align =”left” id=”img” />
<%
End If
%>
3.5新闻版块管理
版块的管理实现添加新的版块、修改或删除已经添加的版块的功能。对新闻可以分类整理,归为不同的模块,从而通过版块的管理可以快速实现对同类的多条新闻的头部删除操作。新闻版块管理具体包括版块管理登陆、版块管理。
1、版块管理登陆(login.asp)
版块管理的登陆与前面的登陆类似,也是从表单中提取用户名和密码,与数据库中的admin表中的username和passwd进行连接验证,成功则转到bankuai.asp,否则重新转到login.asp页面进行重登陆。在Dreamweaver中,通过“插入”工具栏“数据”选项卡中的“登陆用户”命令设置登陆验证,弹出的【登陆用户】对话框如图所示
2、版块管理(bankuai.asp)
该版块首先实现为数据库添加版块分类,然后可以对添加后的版块进行修改和删除操作。这里对数据表bankuai进行读写
操作步骤如下
(1)绑定记录集
在Dreamweaver中,打开bankuai.asp页面,使用高级模式插入记录集,使用SQL语句查询bankuai数据表的所有记录,如图3.22所示
(2)在页面中,选择“插入”工具栏的“数据”选项卡,通过“插入记录”,设置将form1表单中名称为ok的文本框的内容对应插入到数据库表bankuai的type字段中,插入完成后,返回本页。
(3)在该页面的form1表单下方,插入一个表格,在表格中插入一个表单。在表单中绑定记录集中的type和typeid。设置typeid为隐藏:
”/>
通过type显示已经添加的版块名称,绑定到文本框中:
Value=”<%=(Recordset1.Fields.Item(“type”).Value)%>”/>
设置typeid为隐藏目的是为了在bankuai.asp页面不显示它,但是在单击【修改】按钮后,提交本表单的名称为type和typeid的文本框内容到bkxiugai.asp,该页面代码如下:
<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936”%>
<%
Dim type1
Type1 = Request.Form(“type”)
Dim typeid
Typeid = Request.Form(“typeid”)
Set Command1 = Server.Createobject(“ADODB.Command”)
Command1.ActiveConnection= MM_connection_STRING
Command1.CommandText = “Update bankuai SET type = ‘”&type1&”’ Wheretypeid=”&typeid
Command1.CommandType =1
Command1. CommandTimeout=0
Command1.Prepared=true
Command1.Execute()
Response.Redirect(“bankuai.asp”)
%>
该页面用type文本框中输入的新的版块名称,替换bankuai表中typeid对应字段,从而实现了对版块名称的修改。
(4)如图所示,在该表格的表单后设置一个“删除”超链接,代码如下:
该超链接的地址为bkshanchu.asp,传递记录集Recordset1的typeid字段参数,通过typeid参数从数据库表bankuai中删除相应的记录。bankuai.asp页面的代码如下:
<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936”%>
<%
Set Command1 = Server.CreateObject(“ADODB.Command”)
Command1.ActiveConnection= MM_connection_STRING
Command1.CommandText = “Delete From bankuai Where typeid = ”&request.querystring (“typeid”)
Command1.CommandType =1
Command1. CommandTimeout=0
Command1.Prepared=true
Command1.Execute()
Response.Redirect(“bankuai.asp”)
%>
删除版块信息后,重新返回bankuai.asp页面。
最后,设置显示重复区域,登录后,该页面的显示效果如图3.23所示
3.6新闻信息管理
前面通过管理员登录对版块信息进行管理,涉及到具体新闻条目的管理,包括添加新闻条目到对应的版块,还应该实现对已经添加的新闻的修改。
1、添加新闻(addnew.asp)
添加新闻通过在addnew.asp页面设计一个表单,对应new数据表的各个字段,设置相应的表单元素,使用Dreamweaver的“插入记录”功能写入new数据表。图3.24是页面表单的设计效果。
操作步骤如下。
(1)绑定两个记录集,操作与前几节相同。
(2)设置动态列表。在【文章分类】后单击鼠标,选择“插入”工具栏中的“数据”选项卡,单击“动态选择列表”按钮,弹出【动态列表/菜单】对话框,设置记录集Recordset2的type字段的值等于记录集Recordset1的typename字段值,
(3)设置动态复选框。推荐新闻和新闻是否包含图片,需要设置为复选框。在Dreamweaver中,在【推荐新闻】后单击,选择“插入”工具栏中的“数据”选项卡,单击“动态复选框”按钮,在弹出的【动态复选框】对话框中,设置当复选框被选中,即状态为true时,记录集Recordset1的tuijian字段被设置为true。
同理,设置【新闻是否包含图片】的复选框,这里不再重复。