ASP.NET 中学校园网站的设计与实现(论文+源码)_Nueve

摘 要:受铁富高级中学的委托,为满足该校师生能够快速获取、发布和传递学校信息,特构建铁富高级中学网站系统。本文所开发的就是一个基于ASP技术的动态校园网站的设计和实现,该网站主要由新闻动态、留言板、网站后台管理三大主要模块组成。留言系统提供了用户签写留言,查看留言的功能,后台管理系统为管理员提供了对网站系统管理的平台。另外网站还实现了一些其它功能,如信息阅读次数统计,校园公告栏,工作信息和学校概况。本网站采用了B/S体系结构,以ASP 作为前台开发工具,以Microsoft Access作为网站的后台数据库.

关键词:ASP,留言板,校园网

The website of Tiefu senior middle school

Abstract:The Tiefu senior middle school's request, for is satisfied this school teachers and students to be able fast to gain, to issue and transmits the school information, especially constructs the Tiefu senior middle school website system. This article develops is one based on the ASP technology dynamic campus website design and the realization, this website mainly by the news tendency, the message version, the website backstage manages three big modules to be composed. The message system has provided the user the abbreviation message, examined the message the function, the backstage management system management system has provided for the manager to the website system administration platform. Moreover the website has also realized some other functions, like the information reading number of times statistics, the campus bulletin board, works the information and the school survey. This website has used B/S architectureBy ASP took the onstage development kit, takes the website by Microsoft Access the backstage database.

Keywords: ASP,message board, website

目  录

  1

1 网站的总体设计 2

1.1网站系统需求分析 2

1.2网站的设计原则 3

1.3网站模块结构图 4

1.4开发关键技术介绍 5

1.5本网站的特点 9

2 数据库设计 10

2.1数据库需求分析 10

2.2数据库的结构设计 10

2.3数据库中表的设计 12

2.3.1分析、设计数据库中的表 12

2.3.2表中的字段及表的结构的设计 12

3 网站子模块的设计 14

3.1网站结构组成 14

3.2网站子模块的详细设计 14

3.2.1 网站访问量的设计 14

3.2.2 网站留言板的设计 15

3.2.3 网站后台管理的设计 22

4 网站的发布与运行 27

4.1网站的部署 27

4.1.1 运行环境的配置 27

4.1.2 操作系统的选用 27

4.2网站的发布运行与评价 28

4.2.1网站的发布运行 28

4.2.2网站运行的评价 31

   32

参考文献 33

   34

序  言

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。

江苏省铁富高级中学是建于1956年的历史名校。 建校50年来,学校已为国家培养出大批的优秀毕业生。为了适应信息化的发展,提高学校知名度、增加学校招生和办学的宣传力度,构建自己的校园网站变的越来越重要了。学校网站是学校的"商标",网站的超时空特性,不仅能让地区内的人们了解学校,更可让世界了解你的学校。学校网站能提供教学互动的全新方式,使得教师与教师、教师与学生、学生与学生之间的交流有了全新的方式,它不再受到传统课堂的制约。它可以使各地的学校同处一室,共同讨论,共同共享。地理上的界限在这里模糊和消失了,学校网站是真正没有围墙的学校。

本文主要介绍了网站的底层数据库的需求分析、概要设计、详细设计;网站的整体系统流程、各个模块的详细设计过程、关键代码段的编程思想、网站的界面的设计以及网站的发布和运行。在模块详细设计部分主要介绍了网站计数器的设计、网站留言板的设计以及网站后台管理的设计等。在网站的发布和运行部分主要介绍了网站发布的主要技术和运行的结果等。

第1章 网站的总体设计

网站的开发是一项复杂的系统工程,它涉及面广,包括技术、管理业务、组织和行为。它的开发时间长,费用又很高,为了保证网站的开发质量,提高网站的开发成功率,除了采用正确的开发策略和科学的开发方法外,调研是必不可少的。因为经过有效的调研之后可以明确网站的开发目标和开发过程之中应该注意的问题;此外调研为总体规划和紧随其后的要做的网站建设可行性研究提供可靠的定性和定量的依据。

调研的内容可以根据设计的目的不同摘录部门有用的信息。其中系统概述包括系统的运行环境、管理体制、组织机构、五大资源(人、财、物、设备、技术)的情况是必不可少的。此外还应该包括网站开发的条件和目标等信息。

在调查过程中,要认真记录学校的现状、在校人数、办学规模以及学校的信息量等等。虚心请教一些技术员工,从而获得更有效的信息,为目标系统的开发做好充分的材料和技术准备。

1.1网站系统需求分析

网站主要采用静、动相结合的方式,即静态的主画面和动态的网页相结合,体现学校的勃勃生机,静态主页方式介绍学校发布的一些信息包括:学校概况、学校最新动态、学生组织等,利用ASP与数据库结合的技术建立留言板和后台新闻管理的数据库管理系统,采用交互式的动态的web画面来实现。其中鼠标点击之后出现小手标志为链接信息。在首页的设计过程中,其中布局和颜色的搭配由为重要,如果搭配的好会给人一种整体都很美观的感觉。在框架设计上,也是一样,总体来说,一个网站的首页是你给用户所开发网站的门户,所以网站首页的做工一定要细致,从而能够吸引该网站的浏览者。在江苏省铁富高级中学校园网站的开发设计过程中,该网站主要以信息发布为主,所以在设计过程中,就要想方设法的以多发布和发布及时准确的消息为主。

按照系统开发的基本观点对网站进行分解,从内容上可对网站作如下划分:

● 学校风采:通过学校概括、校园之星及部分新闻图片等内容来展现。

● 优点特色:通过新闻、生动活泼的教育教学栏目来展现。

● 信息发布:通过公告栏、学校动态等栏目来实现。

● 教学校务:根据校务的公开程度与参与人数的多少,特选择留言板、 工作信息等在网上实现。

1.2网站的设计原则

本系统的开放设计思想有以下几点:

1.尽量采用铁富高级中学现有的软、硬件环境及先进的管理系统开发方案,从而达到充分利用学校现有的资源,提高系统开发水平和应用程序的目的。

2.开发的网站应符合铁富高级中学管理系统的规定,满足学校日常课程管理的工作需要,并达到操作过程中的直观、方便、实用、安全等要求。

3.系统Browse/Server体系结构

B/S模式是目前在Internet/Intranet网络平台上最流行的运行模式。B/S模式由浏览器和网络服务器组成,通过网络进行连接。浏览器是通用的用户界面,不需在浏览器客户端安装用户应用程序;服务器提供用户所需要的信息。本铁富高级中学网站系统采用此模式可以使数据处理、内部消息的浏览和外部信息的浏览界面完全一致,方便了家长和在校师生的使用。由于浏览器端不要安装用户应用程序,降低了运行维护费用。

4.本网站系统采用模块化程序设计方法。既便于系统功能和各种组合和修改,又便于未来开发的技术维护人员补充维护。

5.本网站系统应具备数据库维护功能。及时根据用户需求进行数据的添加、删除、修改等操作。

1.3网站模块结构图

图1-1 网站功能模块结构图

各功能模块,简介如下:

●学校概况及学校动态

介绍学校历史、发展历程、学校规模、最新动态以及未来发展规划等。

●学生组织

加强在校学生间的相互联系,充分调动学生在学校活动中的作用,促进师生间交流。让学生通过多种活动,利用自我教育形式,互相帮助、监督,共同进步。

●留言板

留言板服务已经是互联网站一种极为常见的互动交流服务。留言板可以向学生提供开放性的分类专题讨论区服务,学校的毕业生们可以在此发表自己的某些观感、交流某些经验、乃至人生的感悟与忧欢,亦可以作为毕业生与母校交流的渠道,在校学生亦可在此提出一些学校存在问题或发布某些消息。

●新闻动态

用户从这里可以了解到最近学校新闻、高考动态、政策法规信息和友好学校的动态信息以及国内,国际的大小新闻。

●后台管理

管理员可以对网站的内容进行增加、修改、删除以及对上传文件的管理和系统的管理等。

管理员可以将网页上的某些需要经常变动的信息,类似招生新闻、政策法规信息和友好学校动态信息等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上。网站信息通过一个操作简单的界面进入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。

1.4开发关键技术介绍

开发工具:用ASP+Access开发这一类型的系统仍然是当今的主流,下面对ASP的核心技术和Access数据库作一个简单的介绍。

1.ASP (Active Server Pages)是指动态服务器网页,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE 或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”,不像VBScript或 JavaScript是在客户端(Client)的浏览器上执行,若使用VBScript来设计程序,客户端(Client)在IE浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用Netscape浏览器就无法显示VBScript的执行结果。

Web源于静态文本,现在很多站点几乎还是采用这种方式。静态文本的缺点就是维护难(文件数目多)、查询难、修改难。虽然可以采用FrontPage对站点进行管理,但这只是其中的一个办法。现在,很多的站点都会在后台采用数据库,动态生成超文本。这样,要改变式样,只需修改几个文件;要变更内容,只需对数据库进行操作即可,而且易于保持一致性;而对于全文检索等查询应用,这种方式的优越性更为突出。(经常说的图片的动态显示,如动态GIF、Java Applet等,本文所指为资料的动态性)通用网关界面CGI(Common Gateway Interface)和网络服务器应用程序界面ISAPI(Internet Server Application Programming Interface)与其他相关技术的出现,使我们能够方便地与Web Server进行沟通,从而象一些计数器、留言板等CGI程式相继出现并蔚然成风。但这些CGI程序都有一个很大的缺点,就是CGI(可用VB、Java、Perl、C或Dephi等编写)与html只能分开编写、分开运行,要将两者融合在一起并不容易,从而导致维护与编写都相当困难。因此,一些厂商后来都推出了自己的Script语言,来增强网页开发的功能。其中Netscape推出了JavaScript(for client端和for Server端两种);微软则推出了VBScript和ASP(ASP的语法与VB的语法类似)两种,也用于服务器端和客户端程序的编写。对于专业开发人员而言,客户端程序的最重要的一点是通用性,而服务器端的则强调功能和效率。对于Client端程序的开发,JavaScript无疑是最佳的,因为当今两大主流浏览器IE和Netscape都宣称支持该标准;而VBScript则只有IE才能支持。但令我们苦恼的是对某些JavaScript的标记,IE或IE的某些版本并不一定会支持,这必导致我们不得不把一部分程序移到服务器端去执行,因为服务器端的程序会先解释生成html(或含ActiveX)文本,再送到客户端,故不存在兼容问题。

认识ASP的六大内置对象,是设计功能强大的Web应用程序的第一步。下面对这六大对象做一个介绍。    

Request  从客户端取得信息 

Response 将信息发送客户端    

Server  提供Web服务器的一些组件 

Session 储存一个Session会话过程中的用户信息,它仅可被该用户访问 

Application  在一个ASP应用程序中可以给不同客户端共享的信息 

ObjectContext 用来配合Microsoft Transaction服务器进行分布式处理 

现在开始逐一介绍上述的六大对象。 

(1)Request对象    

通过Request对象,我们可以收集到客户端的Form,Cookies,超连接,或是服务器的还境变量,因此,Request为我们的ASP程序提供的加工的“原材料”,您说它重要吗?没有Request对象的话,那么ASP程序就失去了与客户端联系的交互能立,可以把它想象为我们的眼睛和耳朵。 

(2)Response对象

Response对象可以把ASP程序加工后的“产品”,发送给客户,让他们可以看见结果。同时,也可以通过Response对象设置客户端浏览器的状态,比如设置Cookies,Cookies是一种跟踪客户端状态的技术,有的网站利用Cookies来记录你是第几次访问他们的网站,而Cookies就是那些保存在Windows系统目录Cookies里的那些文件,那些文件可以供网站重新读取和设置。用来跟踪您的状态,Request和Response可以说一个对孪生兄弟,一个负责收集,另一个负责输出。

(3)Server对象

Server对象为您的ASP程序的扩展提供的灵活方便的途径,比如说,如果您需要在ASP程序中读写服务器上的某个文件,那么就可以借用“文件存取组件”来读写文件。而Server对象就充当了建立这个组件的实例的角色,需要使用某个组件,必需先建立它的一个Server对象实例,在后面将要介绍的ADO组件,您就能清楚地理解服务器对象的作用了。   

(4)Session对象

ASP程序可以说是一个Web的应用程序,传统的HTML页,不能跟踪客户端的情况,比如说客人现在处于那一个页面上,何时离开了这个网站,而Session对象的引入,不但能使上述的问题得以解决,并且能为用户个人保存网站期间(会话)的数据信息,它只对用户个人作用,而对ASP程序中的其他用户是无作用的,聪明的朋友可能和早就猜到其实Session也是利用Cooikes技术来临时保存用户数据。当你把浏览器的Cooikes功能关闭,那么Session对象就失效了,因此设计ASP程序时别忘了这一点哦。

(5)Application对象

既然Session对象的数据是用户私有的,那么ASP程序中必须要有一种能让处于ASP程序中所共同享有的数据信息,这就是Application对象,可以说。Application对象内保存的信息,是可以让同一ASP程序中的所有用户所共享的,比如聊天室里说一句话,聊天室里的所有人都能看见,这里就是应用了Application对象把说话的信息保存起来,再显示出来。而悄悄话既是一种Session对象信息。只有特定的用户能看见。 

(6)ObjectContext 

这是扩展ASP能力的一个对象,当你需要使用ASP内直接发送EMAIL,或是其它信息时,就少不了它的帮忙。 

2.本站选用Access数据库系统Access 2000是Microsoft公司开发的一种桌面数据库系统,能够将大量的数据组织在一起,并对它们进行统计、查询、检索、打印等操作。无须编写代码,便能通过可视化的操作完成日常办公所使用到的功能。它的另一大特点是按照向导的提示,就能够设计出基本的数据库系统。

通过网页发布数据库,首先要做好的工作是建立一个符合实际需要的数据库,包括建立各个表格、索引和存储过程等。

在进行数据库设计时应该考虑3个方面的因素:第一、数据完整性;第二、易用性;第三、数据库性能。

首先建立一个新的数据库,命名为tempdb.mdb。然后在新数据库中建立若干个数据表,分别是verification,score,admin,register,等等

数据库建立完成以后,下面的工作是将所建立的数据库创建为ODBC数据源。在ODBC Data Source Administrator的System DSN选项卡中单击ADD按钮,将弹出一个创建新数据源的对话框。在对话框中选中microsoft Access项单击完成按钮,则出现Create a New Data Source to Access对话框。在对话框中有两个编辑框和一个列表框。在第1个编辑框中应填入数据源名称,第2个编辑框中应填入对该数据源的描述性文字。通过列表框可选取一个Access数据库服务器。在这里由于所使用的数据库建立在本地计算机上,所以选取local项。

完成以上设定后单击下一步按钮,进入创建Access数据源的最后一步。在这一步,不需要设置任何参数直接单击完成按钮。

到此为止,一个新的名为tempdb的数据源添加完成。

ASP对数据库的访问主要是通过内置对象DAC(DATABASE ACCESS COMPONENT)实用数据库访问控件ADO(ACTIVE DATA OBJECT)来实现的。ADO是一种操作Microsoft所支持的数据库的方法,在ASP在它可以看作是一个数据库服务组件。

ADO主要对象有三个:Connection,Command,Recordset,灵活运用这些对象的属性、方法可以达到访问数据库的目的,其基本步骤通常是:

(1)建数据库源名(DSN)

DSN是连接ODBC和数据库的桥梁,ODBC通过DSN来找到要访问的数据库。关于如何配置数据源已经在上面介绍过了。

(2)建立数据库连接

Set conn=server.createobject(“adodb.connection”)  用服务器对象的createobject创建一个链接对象conn

Conn.open “dsn=dbfsource;uid=sa”    使用conn的open方法打开链接,其中用到了名为“dbfsource”的DSN。后面的参数用来表示访问数据库的用户名和口令。

(3)操作数据库并创建数据对象

set rs=conn.execute(“select * from guestbook”)   使用Access语句操作数据库,并将结果返回给一个recordset对象rs

(4)关闭数据库对象和链接

rs.close     关闭recordset对象

conn.close   关闭链接对象

1.5本网站的特点  

铁富高级中学校园网站系统一个很好的应用就是它的运作是完全根植于学校教学校务以及学生工作之中。在网站主菜单的设计上,可以简单明了的查阅各方面的信息,在后台管理上可以方便的进行增加和删除工作。由于其使用ASP制作而成,所以本网站的稳定性非常的好。

在本铁富高级中校园网站系统的信息录入过程中,采用了后台录入,前台更新的方法。这样就体现了信息的及时性。并且方便查询者浏览学习一些文件和信息。

铁富高级中校园网站系统所使用的Access数据库表的设计也采用了规范化的方法,避免了许多冗余数据的输入与删除工作,提高了系统的合理性和运行效率。保证了系统的数据和信息的完整性与可维护性。

本网站以ASP为开发平台,以VB script为核心开发语言,比较成功地设计出一个校园信息网站。体验了新一代的网站开发语言的优越性,实现学校网站的各种信息发布功能。

第2章 数据库设计

本网站采用的数据库是微软的Access 2000,他是一个客户/服务器结构的关系数据库。关系数据库系统是一种数据库体系结构,已被包括Microsoft新闻发布在内的软件销售商广泛应用于Access。一个关系数据库由许多个数据表组成,每个表又进一步细分为行(也称为记录)和列(也称为段)。可以将数据库中的一个表看作一个电子数据表,用行表示记录,用字段表示列。大多数数据库包含多个表和其他数据库对象。

Access是一个真正意义上的客户/服务器结构的关系数据库,它允许企业设计一个分布式数据库系统以满足不断变化的信息需求。

2.1数据库需求分析

根据网站系统功能设计的要求及功能模块的划分,下面给出铁富高级中学网站的数据项和数据结构。

对于整个校园网站系统,可以列出以下数据项和数据结构。

● 校园网站访问量统计表 包括的数据项有访问量记数。

● 管理员信息表 包括的数据项有管理员用户名、管理员密码。

● 校园新闻表 包括的数据项有新闻编号、新闻的类型、新闻标题、作者、上传的时间、新闻内容以及新闻的点击数。

● 留言板信息表 包括的数据项有用户ID、用户名、电子邮件、个人主页、QQ、留言主题、留言内容、留言时间以及留言内容的点击数。

2.2数据库的结构设计

根据上面的分析,我们设计规划出几个实体的E-R图,并将他们描述如下:

新闻表E-R图:

图2-2管理员信息表E-R图

管理员实体具有用户名、密码等属性。

留言板信息表E-R图:

图3-3留言板信息表E-R图

留言信息实体具有用户ID、用户名、主题、内容、时间等属性。

2.3数据库中表的设计

数据库的内容以及表的设计直接影响到开发的网站系统的质量,好的设计可以达到方便易用的功能,下面将对数据库中的表进行设计。

2.3.1分析、设计数据库中的表

根据系统的要求,我们采用的数据库是Microsoft Access ,拟建立后台新闻管理news.mdb库文件、留言板Gbook.mdb库文件和网站访问量count.mdb库文件。

后台新闻管理news.mdb库文件包含如下几个文件表:

● admin:         管理员登录信息表

● news:          学校新闻列表

留言板Gbook.mdb库文件包含如下几个文件表:

● admin:         管理员权限表

● gbook:         留言信息表

● reply:         回复信息表

网站访问量count.mdb库文件包含如下几个文件表:

● cn:            网站访问总量统计表

2.3.2表中的字段及表的结构的设计

·管理员基本信息表  包括用户名、密码。

表的结构如表2-4所示:

表 2-4  管理员基本信息表

·校园新闻表  包括新闻编号、新闻的类型、标题、作者、上传的时间、新闻内容以及新闻的点击数。

表的结构如表2-5所示:

表 2-5 校园新闻表

·留言信息表  包括用户ID、用户名、电子邮件、个人主页、QQ、主题、留言内容、留言时间以及留言信息的点击数。

表的结构如表2-6所示

表 2-6 留言板信息表

·访问量统计表  包括网站访问量的统计。

表的结构如表2-7所示:

表 2-7 网站访问量统计表

第3章 网站子模块的设计

3.1网站结构组成

本校园网站系统主要由电子公告栏、新闻动态、工作信息、留言板、后台管理这几个模块组成。

3.2网站子模块的详细设计

在网站子模块的设计部分主要对网站的访问量、网站留言板、后台管理这三个部分进行详细的设计。

3.2.1 网站访问量的设计

总访问量是指网站所有的访问量的总和,这样的数据对于一个网站的管理员有很多的意义:浏览本站人数多少能让管理员知道他所制作的内容是否吸引人,网站的宣传是否足够,是否要使用什么样的活动来增加浏览的人数等。下面用count方法来计算校园网站已经访问的人数。

//注释:开始设定cookies值为空,通过点击记数,用update方法更新数据。

if request.cookies("dscount")=empty then

response.cookies("dscount")="yes"

rs("count")=rs("count")+1

rs.update   

end if

ccount=rs("count")

rs.close

set rs=nothing

conn.close

set conn=nothing

application.unlock

3.2.2 网站留言板的设计

校园网站留言板是应用电子便迁管理系统,用ASP或其他脚本语言编写的网络应用程序。为家长、学生、老师提供了一个很好的交流的平台,留言板可以提供完备的信息发布功能。同时,在日常生活中,学生可以通过留言板对学校的建设和发展以及网站的建设提出一些建议,以帮助学校和网站更好的发展。

留言板采用B/S结构模式来设计,其特点就是实现在线的查看、留言、查找和管理功能,这种系统的优势在于系统简单、功能强大、扩展能力良好,以及能够方便地跨地域操作等性能。

1.功能目标设计和具体页面设计

留言板所要实现的功能如下:

(1)留言板的基本功能。

● 留言板首页:留言板的基本结构

● 查看留言功能:查看用户的留言信息

● 签写留言功能:提交用户的留言信息

(2)管理功能。

● 管理员登录功能:管理员通过登录功能管理留言信息

● 验证登录:验证管理员的登录密码

● 回复留言功能:对用户的留言进行回复

● 删除留言功能:删除用户的留言信息

● 解锁、锁定消息功能:锁定和解锁用户的留言信息

● 设置留言板配置信息:对留言板的页面效果进行设置

根据系统功能的要求,校园网站留言板可以分为两个模块:留言板基本功能模块、管理功能模块。如图3-1所示给出了两个功能模块之间的关系。

图3-1 校园留言板功能与页面逻辑结构图

对于留言板基本功能模块,根据系统的功能分析,它应包括:首页浏览、签写留言、查看留言等功能;对于留言板的管理系统,根据系统的功能分析,它应包括:登录验证、回复留言、删除留言、解锁和锁定消息功能、设置留言板配置信息等功能。

2.留言板数据库需求分析

根据系统功能设计的要求及功能模块的划分,下面给出给出各个组成部分的数据项和数据结构。

对于留言板的基本功能模块,可以列出以下数据项和数据结构。

● 留言信息:用户ID、用户名、电子邮件、主页、QQ、主题、内容、表情、头像、时间、ID状态等。

对于留言板管理功能模块,它操作的数据较多,所以分为不同的功能来给出表格。

● 回复功能:留言信息表。

● 删除功能:留言信息表。

● 登录验证:web.config文件。

● 设置站点功能:web.config文件

3.留言板数据库的结构设计

根据数据库的需求分析,将建立以下几张表,下面给出表的结构。

● 留言内容表(留言表),其结构如表3-2所示。

表 3-2 留言内容表

●回复内容表,其结构如表3-3所示。

表 3-3 回复内容表

留言内容表(留言表)是用来存储所有的留言信息的。每当用户进行留言,其留言内容就被保存到这个表中。

回复内容表是用来存储所有的回复信息的,当管理员对用户的留言进行回复时,其回复的信息就被保存到此表中。

4.留言板留言页面的设计

(1)页面设计

当用户需要在网站留下自己的心声时,就需要一个留言页面了。用户需要在这个页面填写许多内容,包括必须的(用户名、留言主题、留言内容)和可选的(包括个人主页、电子邮件、QQ),同时用户还可以选择留言的表情和留言的头像。

如图 3-4所示的页面是一个要填写留言的页面,单击发表留言按钮后,如果填写的页面内容正确,则页面会回到首页,并将最新的留言显示在第一条。

图 3-4 留言页面

如果图3-4中填写的内容不正确,则会弹出一个对话框,该对话框用来显示错误的提示信息,提示用户哪部分没有填写正确。

(2)代码分析

//注释:判断用户的留言信息是否正确,不正确则出现提示信息。(部分代码)

if session("OldGuestSave") <> "" then

message1="请不要重复提交同一条信息嘛\n"

end if

if username = "" then

message="请填写您的名字哦\n"

end if

if zt = "" then

message="请填写留言主题\n"

end if

if body = "" then

message=message&"留言内容不能为空\n"

end if

//注释:处理留言信息,并将留言信息进行保存和更新。

session("OldGuestSave")="Saved"

sql="select * from admin"

Rs.open sql,conn,3,2

if date <> today_time then

Rs("today_count") = 1

else

Rs("today_count") = Rs("today_count")+1

end if

Rs("today_time") = date

Rs.update

Rs.close

set Rs = nothing

conn.close

set conn = nothing

Response.redirect "index.ASP"

Response.End

end if

end sub

5.管理页面

留言的管理功能是具有管理员权限的用户才可以使用,所以用户必须先通过身份验证。如图3-5所示是管理员的登录页面,用户需要在其中的文本框中输入管理员密码。

图3-5 管理员登录页面

通过验证的用户就具有了管理员权限了,管理员可以对留言信息进行回复、删除、解锁和锁定等功能。

6.回复页面

通过验证后的管理员就可以对留言信息进行回复了,单击任意留言的“回复”超级链接,就会进入如图3-6所示的回复页面,页面中央是一个文本框,让管理员输入回复留言的内容。

图 3-6 管理员回复页面

当管理员输入完内容,并单击“回复”按钮以后,留言板系统就会处理回复事件,并将页面返回到留言板首页,用户就可以看到管理员刚才回复的内容了。

7.删除页面

通过验证后的管理员就还可以对用户的留言信息进行删除,单击任意留言的“删除”超级链接,就会进入到删除页面 。

当前面的留言信息被删除后,后面的留言会自动补上来。

//注释:在数据库gbook表中删除留言信息

if Request.form("select") = "this" then

sql = "delete * from gbook where id=" & id

Set Rs = Server.CreateObject("ADODB.Recordset")

Rs.open sql,conn,3,1

Rs.close

//注释:在数据库replay表中删除回复信息

sql = "delete * from reply where replyid=" & id

Rs.open sql,conn,3,1

Rs.close

sql = "select * from admin"

Rs.open sql,conn,3,2

if Rs("today_count") > 0 then

//注释:留言板留言信息数目减一

Rs("today_count") = Rs("today_count")-1

else Rs("today_count") = 0

end if

8.系统环境设置页面

系统环境设置主要是对留言板的页面效果进行设置,在这里管理员可以设置留言板的名称、管理员的口令、网站的名称、网站的网址、留言内容大小限制、每页显示的留言数、提交的时间、管理留言等等。

单击留言板上的“管理员”按钮,进入管理员权限页面,输入管理员密码即可转入系统环境设置页面。如图3-7所示:

图 3-7 系统环境设置

在系统环境设置的管理留言选项中,管理员可以根据留言的主题,对留言进行查看、锁定、解锁和删除。这样做的目的是用户在留言之后要经过管理员的审查,审查之后合格的信息管理员可以对留言内容进行解锁,被解锁的留言信息才会出现在留言板的首页,才会被其他人看到。对于一些不积极、不健康的留言内容,管理员在审核之后将予以锁定,或者被删除。这些留言信息将不会出现在留言板上,保证了留言板留言内容的积极向上。

//注释:锁定与解锁

Response.Buffer = True

Response.ExpiresAbsolute = Now() - 1

Response.Expires = 0

Response.CacheControl = "no-cache"

Response.AddHeader "Pragma", "No-Cache"

if Request.cookies("admin") = "" then

response.write "<script>alert(""*对不起,非法登录!"");self.close();</script>"

Response.end

end if

  set cnn=server.createobject("adodb.connection")

  cnn.open "provider = microsoft.jet.oledb.4.0;data source = "& server.mappath("./data/-Gbook.mdb")

//注释:当idlock设定为0时,留言信息被解锁。当idlock设定为1时,留言信息被锁定。

  rssql="update gbook set idlock=0 where id=" & request.querystring("lyid")

  cnn.execute rssql

  cnn.close

  set cnn=nothing

  response.write "<script>alert(""选择的留言已经成功解除锁定。"");self.close();</script>"

3.2.3 网站后台管理的设计

1.管理员登录功能模块设计

管理员是对新闻进行管理的人员,管理员进入新闻的管理界面,需要进行身份验证,管理员登录功能模块就是实现此功能的。如图 3-8为管理员等录界面。

图 3-8 管理员等录界面

管理员通过登录界面传递输入的用户名和密码(系统设置的初始用户名和密码都为“admin”),然后通过查询数据库,进行身份的验证。

//注释:管理员登录验证代码(主要代码)

AdminUID=trim(Request.Form("AdminUID"))

AdminPWD=md5(trim(Request.Form("AdminPWD")))

AdminUID=replace(AdminUID,"'","''")

AdminPWD=replace(AdminPWD,"'","''")

   //注释:建立数据库连接

set rs=server.CreateObject ("ADODB.RecordSet")

rs.Source="select id from Admin where AdminUID='" & AdminUID & "' and  AdminPWD='" & AdminPWD & "'"

rs.Open rs.Source,conn,1,1

//注释:如果验证通过进行session记录并调出admin.main.ASP

if not rs.EOF then

   session("AdminUID")=AdminUID

   session("AdminPWD")=AdminPWD

   Response.Redirect "admin_main.ASP"

Else

<script language=javascript>

 history.back()

 alert("请核对您的用户名和密码!")

</script>

<%

   Response.End

end if

%>

2.增加新闻功能模块设计

添加新闻是后台管理的一个十分重要而且必不可少的功能。新闻的添加要特别注意新闻内容的添加。为了使新闻内容能显示更多的信息,例如回车、空格等信息,在保存新闻内容时需要做相应的处理。这种处理就是将普通格式的文本,转换成网页格式的代码存储到数据库中。系统添加图片的方式是采用“[image]图片的完整路径或相对路径[/image]”的形式,然后再应用格式转换函数将其转换成“<img=图片的完整路径或相对路径</image>>”。点击“增加新闻”按钮,弹出增加新闻对话框,在下拉列表中选择添加新闻的类别,点击下一步。图3-9为管理界面中的新闻添加界面:

图 3-9新闻添加界面

当添加新闻时,系统根据添加界面传递的参数,将数据存储到数据库中。

//注释:建立数据库链接

set rs=server.CreateObject ("ADODB.RecordSet")

rs.Source="select * from BigClass where BigClassID=" & BigClassID

rs.Open rs.source,conn,1,1

set rs2=server.CreateObject("ADODB.RecordSet")

rs2.Source="select * From SmallClass Where BigClassID=" & BigClassID

rs2.Open rs2.Source,conn,1,1

3.新闻修改功能模块设计

在新闻录入的过程中难免会出现这样那样的错误,新闻修改功能模块就是为此而设计的。这里也同样利用了新闻的格式转化,在新闻修改界面显示的是普通格式的内容形式,写入数据库时又将其转换成网页格式的内容。这里值得一提的是,在新闻修改框里显示的新闻内容是经过转换后的新闻内容,即是将存储在数据库中的网页格式的内容转换成了普通格式的内容,目的是方便修改。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值