1、引 言网站(Website)是指在因特网上,根据一定的规则,使用 HTML 等工具制作的用于展示特定内容的相关网页的集合。简单地说,网站是一种通讯工具,就像布告栏一样,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。在因特网的早期,网站还只能保存单纯的文本。经过几年的发展,当万维网出现之后,图像、声音、动画、视频,甚至 3D 技术开始在因特网上流行起来,网站也慢慢地发展成我们现在看到的图文并茂的样子。通过动态网页技术,用户也可以与其他用户或者网站管理者进行交流。也有一些网站提供电子邮件服务。许多公
2、司都拥有自己的网站,他们利用网站来进行宣传、产品资讯发布、招聘等等。随著网页制作技术的流行,很多个人也开始制作个人主页,这些通常是制作者用来自我介绍、展现个性的地方。也有以提供网络资讯为盈利手段的网络公司,通常这些公司的网站上提供人们生活各个方面的资讯如时事新闻、旅游、娱乐、经济等。- 2 -第一章 所用开发语言简介1.1 ASP 的特点ASP 是一种未经编译的开放式的应用软件,是微软公司推出的一种用以取代CGI(公共网关接口即 Common Gateway Interface)的技术,它实质上是一种服务器端脚本环境。ASP 被包含在 IIS 3.0 及其更高版本之中。通过 ASP,用户可以结
3、合 HTML 网页、ASP 指令和 ActiveX 组件建立动态、交互且高效的 Web 服务器应用程序。ASP 的出现使用户不必担心客户端不能正确运行所编写的代码,因为所有的程序将在服务器端执行,包括所有内嵌的普通 HTML 中的脚本程序。客户端只要使用可执行 HTML 代码的浏览器,即可浏览通过 ASP 设计出来的页面内容。当程序执行完毕后,服务器仅将执行的结果返回给客户端浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。ASP 并不是一种纯粹的编程语言,它所用的语言是大多数人都非常熟悉的两种脚本语言,即 VBScript 和 JavaScript 语言。在一个 ASP 应用程
4、序中可以用其中一种脚本语言,也可以结合这两种语言使用。另外 ASP 还能与任何 ActiveX Scripting 语言相兼容。ASP 使用的 ActiveX 技术是基于开放设计环境的,用户可以使用 Visual Basic、Java、等编程语言将自己定义和制作的组件加入其中,是自己的动态网页具有无限的扩充能力,这是传统的 CGI 等程序所远远不及的地方。另外,ASP可利用 ADO(Active Data Object,微软公司的一种数据访问模型)方便地访问数据库,从而使得开发基于 WWW 的应用系统成为可能。ASP 的编辑环境要求非常简单,任何一种文本编辑器都可以编写 ASP 应用程- 3
5、-序。使用 ASP 开发网页应用程序具有以下一些特点:(1)完全内嵌,与 HTML 和 Script 语言充分结合。(2)无需编译,容易编写,可在服务器端直接运行,且 Web 程序开发时间短。(3)无浏览器兼容问题。(4)程序代码隐藏,在客户端只能看到由 ASP 输出的动态 HTML 文件。(5)使用任何文本编辑器都可以进行编辑设计。(6)可使用任何语言编写自己的 ActiveX Server 组件。(7)使用 ADO 组件轻松存取数据。(8)面向对象,并可扩展的 ActiveX Server 组件。一个以 ASP 为基础的应用程序包含了 Web 服务器的虚拟目录(Virtual Direct
6、ory)以虚拟目录下的所有文件夹与执行文件。虚拟目录主要是为了保护服务器端站点的内容和资料,避免受到网络黑客的恶意破坏和攻击而产生的。在提供 WWW 服务的服务器端,虚拟目录的作用是不让客户端用户知道一些目录与重要文件的真实路径,也就是说每一个绝对路径(即真实路径)都已经隐藏起来,这些可以供网络客户访问的 Internet 资源都会以服务器的文档根目录(Document Root)作为相对路径的基点(Base) ,或者另取一个从表面上看来毫无关系的别名(Alias Name)来隐藏真实目录名称。这些相对目录就称为虚拟目录,相对路径和绝对路径是相对立的。另外,每个 ASP Web 应用程序都拥有
7、一个 Global.asa 文件,后缀名 asa 是Active Server Application 的缩写。(1) ASP 文件的存取方式- 4 -使用任何一种文本编辑器都可编写 ASP 应用程序,编写的程序要以后缀名.asp 保存,不可以保存为.html 形式。如果是以.html 形式保存的话,服务器端将不编译文件中所有的包含 ASP 语法的语句。将文件保存为后缀名.asp 的形式是为了告诉提供 ASP 服务的服务器,这是一个 ASP 应用程序,必须在给客户端送出文件之前把它编译一遍。将.asp 后缀名的文件编写存储完毕之后,就可以把它放在自己的 Web 服务器上执行,这样就能够在浏览器
8、端看到 ASP 页面的输出效果了。(2) ASP 文件的结构特点到目前为止,我们已经知道 ASP 能够和 HTML、Script 语言完美结合。在这之前一直都称开发的项目为应用程序,或许有些人认为 ASP 文件是一个已经被编译过的文件,但 ASP 文件是一个文本文件,可以用任何一种编辑器打开它,并对它进行适当的编辑修改。一般情况下一个 ASP 包含以下几个部分:(1)普通的 HTML 文件。(2)客户端的 Script 程序代码,放置于和标签之内。(3)服务器端的 ASP Script 程序代码,放置于标签之内。(4)Server Side Include 语句,即使用#Include 的语法
9、在本页面嵌入其他的 Web 页面。ASP 的服务器会将其原封不动的发送到客户端,由客户端的浏览器进行处理。目前在 ASP 中可以使用的脚本语言主要是 VBScript 和 Jscript,其中系统默认的脚本语言为 VBScript。不过任何一个可以和 ActiveX Script 标准兼容的脚本语言引擎都可以很好地应用于 ASP 之中。1.2 程序使用的对象及其属性和方法(1)Request 对象(从客户端获取信息,主要是读取提交表单中的数据)- 5 -QueryString: 从查询字符串中读取用户提交的数据;Form:获取客户端在 FORM 表单中所输入的信息;Cookies: 取得客户端
10、浏览器的 Cookies 信息。(2)Response 对象(返回信息到客户端,主要是向浏览器输出文本、数据、Cookies 等)Response.Write: 直接送出信息到客户端;Response.Redirect: 引导客户端浏览器至新的 Web 页面;Response.End: 终止处理 ASP 程序,并返回当时的状况。(3)Session 对象(为单个用户保存信息)利用 Session 存储信息的语法:Session(”Session 名字” )=变量或字符串信息(4)Server 对象CreatObject 方法: 用于创建组件、应用对象或脚本对象的实例CreatObject 的语
11、法如下:Set Server.CreatObject(ActiveX Server 组件)(5)Connection 对象(ADO 的内部对象,用来建立与数据库的连接) 在 ADO 中建立对象一般要用 Server 对象的 CreatObject 方法,语法如下:Set Connection 对象=Server.CreatObject (“ADODB.Connection”)Open 方法: 用于建立和数据库的连接;Close 方法: 用来关闭一个已打开的对象及其相关的各种对象;Execute 方法: 用来执行数据库查询。(6)Command 对象(用来对数据库执行命令,如查询、添加记录等命令
12、)Execute 方法: 用来执行数据库查询。- 6 -(7)Recordset 对象(用来得到从数据库返回的记录集)建立 Recordset 对象的语法如下:Set Recordset 对象=Server.CreatObject(“ADODB. Recordset”)用 Open 方法打开数据库的语法如下:Recordset 对象.OpenSourse,ActiveConnection,CursorType,LockType,Options1.3 系统开发环境1.3.1 Web 服务器的选择要使自己的计算机成为 Web 服务器就要安装相应的 Web 服务器软件。有许多的 Web 服务器可以用
13、来建立 Windows 下的 Web 站点。但是不同的 Web 服务器支持不同的功能。选择 Web 服务器时,最重要的是使 Web 服务器易于建立和管理。其次选择服务器时应注意服务器提供的安全程序,如果 Web 站点只为浏览 Web 站点的用户提供大量的信息,那么安全性问题并不十分重要,但如果要在网上提供重要信息时,应确保数据在传输之前进行加密,这时可以使用额一种安全机制进行传输。另外,Web 服务器必须支持 CGI 脚本(包括 ASP) 。通过提供动态内容和及时响应用户输入,CGI 脚本使得用户可以与服务器进行交互。此外 Web 服务器还应支持日志文件,这对于 Web 管理员及时了解站点的反
14、问情况并做出相应的决策有帮助。1.3.2 IIS 简介IIS 是 Windows NT 提供的 Internet 服务的核心,Windows NT 的安装光盘上带有 IIS。IIS 是微软公司为企业和部门发布信息而设计的,一般用于大型的站点。IIS 5 是新一代的 Web 服务器软件,它包括许多新的特征:- 7 -(1) ASP3.0 解释工具和 ASP 调试工具。(2) 功能强大的 Microsoft Management Console(是微软管理控制台) 、Microsoft Transaction Server 等管理工具。(3) 对多 Web 站点(虚拟主机)支持。(4) 对 Web
15、 站点内容完全控制。(5) Microsoft Index Server 微软高性能索引器。(6) HTTP1.1 和 HTTP 重定向支持。要特别注意的是服务器端的运行环境如下:(1) Windows 2000 + IIS5.0 (Internet 信息服务管理器 5.0)(2) Windows XP + IIS5.0 (Internet 信息服务管理器 5.0)(3) Windows 98 + PWS4.0 (personal Web Server 4.0,个人 Web 服务管理器)(4) Windows NT 4.0 + Windows NT Option pack- 8 -第二章 需求
16、分析2.1 系统功能模块本系统主要实现以下一些基本功能:(1) 百瑞通公司网站:百瑞通公司网站系统主要是信息的发布与管理,涉及到前台用户对新闻信息的浏览和后台新闻的管理两大模块。前台页面一般不需要用户登录注册,也就是对所有用户均开放,不做权限验证,在前台为了满足用户参与的需求,还需要添加新闻评论的功能,使得用户可以对新闻信息发表自己的看法和意见。另外,为了获得用户对哪些方面的信息感兴趣,还要在用户单击新闻浏览时自动统计新闻的浏览次数,以供后台展示热点新闻信息的受欢迎程度。后台管理方面,必须由合法的管理者来管理新闻的发布、修改、删除等,我们要将新闻信息添加到数据库,放置到指定的栏目下。为了使新闻
17、展示出来具有好的效果,还需要对新闻进行排版、添加图片及上传附件等。另外,新闻的发布难免会发生错误,由此还需要对新闻进行修改和删除等。除此之外,前台的评论,对于热点新闻及新闻的受欢迎程度等信息应该能提供管理界面让管理者浏览到,以便管理者能监控系统的访问过程。(2) 讨论区:又称电子公告板,不仅可以用在日常交流中,而且在远程教育、远程医疗中也起到了很大的作用。的形式丰富、方便。给大家构建了一个完美- 9 -的网络讨论空间。在中对于用户来说,其首先需要注册才能够在讨论区发帖子,因此用户有用户 ID、用户名、用户密码,以及用户的各项资料等属性,综合这些属性,可以得出的的第一个功能部分用户的注册,信息的
18、修改,已经注册用户的登录、登出等操作。对于帖子来说,其属性相对就复杂了。首先,不能所有的帖子都放在一起,因此就有了第二个功能部分帖子分类。帖子的本身又要包含标题和内容两个基本属性,当然,为了方便查看和管理,我们还需要给帖子加上发布时间的属性。将帖子和用户联系起来,则需要在帖子中注明此帖的发布人的昵称、发布人的编号等信息。另外,帖子还分主帖和针对主题的回复帖两种。完成对用户和帖子两个基本要素的分析后,的基本功能就算是完善了,即帖子的浏览、发表、用户的注册管理。但是即使对一个简单的来讲,仍然是需要管理员来管理的,这个管理不仅是对帖子的管理,还应当包括对用户的管理。因此应包括第三个功能部分管理部分,
19、在此部分中,应当允许管理员进行登录等操作,并在本部分所有的页面中加入对当前浏览者是否是管理员的判断,以防止越权管理。在判断管理员合法后,应当允许管理员对帖子和用户进行属性修改及删除等操作。(3) 用户登录与注册:用户登录页面主要是为用户提供登录的窗口,用户通过在页面内输入正确的用户名及密码,取得登录系统的权利。否则不能登录系统,实现系统的其他功能。在此,登录的前提是注册用户的一些信息,只有注册成功才能成为该网站的用户。(4) 数据维护和安全管理:数据维护主要对后台数据库进行管理和维护,包括添加、删除、修改等操作,实现对数据库的更新,可以提高系统的运行效率;安全管理主要是对用户的信息进行管理,管理员能够有权增加或删除系统的- 10 -操作人员,并指定教师的登录密码,也可以增加和删除系统管理员。2.2 系统逻辑模块网站首页新闻浏览网站留言论坛管理后台图 2-1 功能模块之间的关系图