内容提要:
本文基于数计学院网站实施过程,概述了 HTML、ASP、数据库的相关技术,使用 WIN2000+ASP+ACCESS 平台,分析、设计数计学院网站过程。
该文的研究将着重数据库的设计、运用 ASP 实现信息管理系统中各个功能模块,是程 序——数据库——网站技术的典型应用。本文设计内容主要有以下几个方面:
1.系统概述
2.系统设计
3.数据库设计与实现
4.后台系统和数据库的配置
5.前端
网站制作与设计
关键词:互联网、HTML、ASP、数据库设计
Abstract:
This article outlined one whole process of THE ONLINE SJXY, and outlined some technologies about HTML, ASP and Accessing the Data Base. And outlined the whole process of how to analyses, design, empolder and debug the application for the ONLINE SJXY.
This thesis stresses the functional modules applied in the design of database, the use of ASP, showing a typical application of technologies from program to databases to network, this thesis is divided into five parts primarily, one by one in order for:1 the discuss of the using software,2 The design of the system design, 3 database of the website with realize, 4 the backstage system installs with database, 5 the development of the head network and design
Key words:Internet, HTML, ASP, Data Base
作者简介:农皓 贵州民族学院 数学与计算机科学学院 计算机科学与技术专业
1. 前言
Internet(国际互联网)是由分布在世界各地的大量计算机遵照共同的传输控制协议
/互联网络协议(Transmission Control Protocol/Internet Protocol;TCP/IP)联接而 成,因此被称为"网中网"或国际网。Internet 是人类历史发展中的一个伟大的里程碑,它 是未来信息高速公路的雏形,人类正由此进入一个前所未有的信息化社会。人们用各种名 称来称呼 Internet,如国际互联网络、因特网、交互网络、网际网等等,它正在向全世界 各大洲延伸和扩散,不断增添吸收新的网络成员,已经成为世界上覆盖面最广、规模大、 信息资源最丰富的计算机信息网络。在 Internet 飞速发展的今天,互联网成为人们快速 获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的 作用。2006年1月 17 日,中国互联网络信息中心(CNNIC)发布了第十七次“中国互联网 络发展状况统计报告”。调查报告显示,截止到 2005 年 12 月 31 日,我国网民总人数达 到 1.1 亿。
而 Internet 上发布信息主要是通过网站来实现的,获取信息也是要在 Internet“海 洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在 Internet 应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而 倍受人们的重视。
1.1 数计学院网站需求分析
数计学院办院以来各方面建设发展迅速,成绩显赫。向社会各界展示学院优异成绩、 学院风采,提高学院知名度等工作越来越迫切。
在 Internet 日益普及的今天,人们每天通过互联网获取最快最全的信息资讯,所以 构建贵州民族学院数学与计算机科学学院网站。是一个很好的宣传窗口,不但可以向社会 各界展示我院教研科研成果,展示师生风采、渊源历史,还可以实现新闻、通知等院务在 线即时发布,提高办学效率。
1.2 当前动态网设计技术发展状况和当前形势
1.2.1 动态网技术的现状 绝大多数商业网站都具有大量的数据和信息,而建网的初衷也就是在于方便客户查询
企业资料,方便同客户的交流,及时获得信息反馈。那么,就必然会面临如何让使用者在
浏览器界面中,通过互联网或内联网(Intranet)查询 WEB 数据库的资料,甚至输入、更 新和删除 WEB 服务器上的资料。下面是几种常用的“动态”技术发展现状
ASP 全名 Active Server Pages,是一个 WEB 服务器端的开发环境,利用它可以产生 和执行动态的、互动的、高性能的 WEB 服务应用程序。ASP 采用脚本语言 VBScript(Java script)作为自己的开发语言。
PHP 是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用 C,Java 和 Perl 语言 的语法, 并耦合 PHP 自己的特性,使 WEB 开发者能够快速地写出动态产生页面。它支持目 前绝大多数数据库。还有一点,PHP 是完全免费的,不用花钱,你可以从 PHP 官方站点 (http://www.php.net)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你 自己需要的特色。
JSP 是 Sun 公司推出的新一代网站开发语言,Sun 公司借助自己在 Java 上的不凡造诣, 将 Java 从 Java 应用程序和 Java Applet 之外,又有新的硕果,就是 JSP,Java Server Page。 JSP 可以在 Serverlet 和 JavaBean 的支持下,完成功能强大的站点程序。
三者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。 但 JSP 代码被编译成 Servlet 并由 Java 虚拟机解释执行,这种编译操作仅在对 JSP 页面 的第一次请求时发生。在 ASP 、PHP、JSP 环境下,HTML 代码主要负责描述信息的显示样 式,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 、 PHP、JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入 到 HTML 代码中,然后一起发送给浏览器。ASP 、PHP、JSP 三者都是面向 Web 服务器的技 术,客户端浏览器不需要任何附加的软件支持。
1.2.2 数计学院网站的技术定位和当前发展形势
目前全国各大院校都有自己的网站,这是 Internet 时代的必然产物,在研究过程中, 当前类似数计学院网站的宣传性站点不在少数:
(1)、发展较快,数量增加较多。随着互联网的发展以及现代教育技术的运用,许多 大中院校都建立了自己的网站(页),有的甚至建立了有自己单独域名的网站。笔者利用 Google 搜索引擎填入关键词“学院 大学”进行搜索,可以搜索到许多相关的各个高等院 校网站。
(2)、
网站制作的技术水平不断提高,但是整体水平还较低。许多院校网站利用动力
网络系统或者运用 Asp 等技术来实现在线管理。当然更多的网站还是停留在简单的少数几
个页面形式。 (3)、网站发展不平衡,质量普遍不高。这是由于地区现代教育技术发展的不平衡以
及教师的信息技术水平等原因造成的。笔者通过 Google 搜索然后访问各个高等院校发现, 在开通宣传性网站的各个院校,以江苏省、浙江省、福建省、广东省等沿海地区为多。这 些地区属于我国的经济发达地区,现代教育技术的发展也较快,教师的信息技术水平也较 高。
1.3 开发工具的选用及其优势介绍
1、 ASP (Active Server Pages)
ASP 简单而易于维护,是小型网站应用的好选择,通过 DCOM 和 MTS 技术,ASP 甚至 还可以完成中等规模的企业应用。所以,在数计学院网站中采用 ASP 技术构建动态互动站 点。
ASP 的优势:
Active Server Pages:“动态服务器网页”,一般简称为“ASP”,ASP 之所以能受到大 家的重视与使用的原因,主要在于所产生的执行结果都是标准的 HTML 格式,而且这些程 序是在网络服务端中执行,使用一般的浏览器(如 IE 或 Netscape)都可以正确地获得 ASP 的“执行”结果,并且将这 ASP 执行的结果直接在浏览器中“浏览”,不像 VBScript 或 JavaScript 是在客户端(Client)的浏览器上执行,若使用 VBScript 来设计程序,客户 端(Client)在 IE 浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用 Netscape 浏览器就无法显示 VBScript 的执行结果。
2、Dreamweaver MX 中文版
Dreamweaver MX 中文版的出现,使制作一个功能强大的网站,变得很容易,可以轻易 的做出以前被认为很复杂的 ASP,PHP 网站。
Dreamweaver MX 是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程 序进行设计、编码和开发。无论直接编写 HTML 代码的驾驭感还是偏爱在可视化编辑环境 中工作,Dreamweaver 都会提供帮助良多的工具,丰富 Web 创作体验。
利用 Dreamweaver 中的可视化编辑功能,可以快速地创建页面而无需编写任何代码。 不过,如果喜欢用手工直接编码,Dreamweaver 还包括许多与编码相关的工具和功能。并
且,借助 Dreamweaver,还可以使用服务器语言(例如 ASP、ASP.NET、ColdFusion 标记语
言(CFML)、JSP 和 PHP)生成支持动态数据库的 Web 应用程序。
使用 Dreamweaver 也可以制作出整个网站,只是 Dreamweaver 本身不适合处理图片, 需要 Photoshop 或者 Fireworks 的配合。使用 Dreamweaver 制作静态站点的流程:新
建站 点→站点文件命名→定义页面属性→插入表格→定义页面大小→转换到布局视图→添加 内容→插入导航条→转换到标准视图工作→添加链接→使用代码片断→定义及应用 CSS→ 添加动态交互→链接站点各个页面。
3、Microsoft Windows Access2003
Microsoft 公司推出的 Windows 数据库管理系统 Access 不仅是关系数据库管理系统, 同时它也被设计为 Windows 图形用户界面应用程序生成器。Microsoft 公司采纳了 dBASE 和 Foxpro 这两个关系数据库的特点来设计 Access,为其增加了窗体和报表设计功能,并 借鉴 Visual Basic 语言,加入了许多程序设计功能。中文版 Access 2003 具有和 Office 2003 中 Word2003、Excel 2003 等相同的操作界面环境以及与其直接连接的功能,并且提供了 更为方便的操作捷径方式。Access 2003 是完全面向对象、采用事件驱动机制的关系型桌 面数据库系统。与其他数据库管理系统相比,它具有如下几大特点:
① 同时面向数据库最终用户和数据库开发人员;
② 典型的开放式数据库管理系统;
③ 支持多媒体的应用与开发;
④ 内置了大量的函数;
⑤ 提供了许多宏;
⑥ 提供了联机帮助功能;
⑦ 基于 WEB 的智能管理功能;
⑧ 更智能的自动拼写与语法检查器;
⑨ 更符合个人网络用户和需求。基于 Access 2003 的这些功能与特点我们选择了它 来管理本软件中涉及到的数据信息。
所以我选择了 ASP 结合 Microsoft Access2003、Macromedia Dreamweaver8 架构贵州 民族学院数计学院网站。
2. B/S 结构下站点设计的
解决方案2.1 设计思想
通过数计学院网站,全面宣传,展示我院办学风采、优点与特色,以及各项教学科研 成果,发布学校的重大活动安排与招生政策,增强社会各界与学校之间的联系,在 Internet 上实现完成部分校务,提高办事效率。
因此,我院网站具备以下的一些功能:
1、新闻、信息系统: 实现在线即时发布更新、修改、删改各类新闻信息
2、站内搜索系统: 实现各类文章按关键字搜索
3、会员系统: 会员分级管理实现不同层次权限要求
4、学生成绩管理系统: 实现学生按个人学号在线即时查询相应学科成绩
5、投票系统: 实现第一时间听取各类不同意见,亦可用作各类投票评选
2.2 方案设计
由于系统定位是一个信息交互性网站,是一个新闻性质的宣传站点。传统的 C/S
(Client/Server)架构很明显不适合。C/S 通常适合于开发面向企业内部的应用,例如管 理信息系统。作为面向 Internet 上的 Web 应用,需要的是 B/S(Browser/Server)架构。 B/S 架构的客户端使用是人们上网冲浪实必不可少的浏览器。这种方法的客户端简单易学, 培训成本低,其大的特点是客户端是轻量级的,即常说的“瘦客户端”,因此 B/S 架构 迅速拓展未来。伴随着 Internet 的繁荣,互联网信息发布蓬勃发展,B/S 甚至已经侵蚀掉 了许多传统的 C/S 市场。
浏览器
请求
Web Server
结果 (IIS/PWS)
请求
Database
结果 Server
请求 浏览器
结果
2.3 B/S 模式的构成和数据处理方式
根据上面的分许,确定系统运行在微软的 Windows NT 系列平台上,使用 IIS 信息服 务器作为 Web 服务器,使用 ASP 完成动态交互功能,网站需要频繁的存储数据,所以采用
数据库管理系统来管理数据,后台数据库则使用 Microsoft 的 Access,对于一般的小型应
用应该可以满足要求。
2.4 系统模块功能分析
数计学院网站包括如下几个主要功能模块:
1、新闻信息分类发布系统功能 新闻信息发布系统整体分为前台和后台两部分。前台的主要功能是为用户提供快速查
看各种新闻。后台主要是针对管理员,包括新闻信息的添加、修改、删除。并且在后台可 以按需要添加、修改、删除新闻信息分类,目前数计学院网站分为院内新闻、院内通知、 图文信息、精品课件四大类,如院内通知则细分有学工委通知和院办通知等。
2、用户登录、注销和注册管理 用向导的方式为新用户提供注册功能,用户输入用户名、密码和其他个人信息,经过
系统的合法性验证成为正式用户。管理员通过后台系统审核,给予注册用户相应的权限。 如果用户忘记密码,可以通过系统提问的方式,由向导一步步找到密码。
3、留言板、新闻评论管理功能
用户可以在站内与管理员进行留言沟通,提出自己的意见和建议。还可以针对某个新
闻信息进行评论,提出自己的见解,并由管理员后台审核认可后发布在该条信息相应位置。
4、站内信息查询、搜索功能 站内信息检索必然需要的是提供给用户快捷方便的方式查找自己需要的新闻和公告
等信息。通常新闻站点都会根据一些标准进行分类,数计学院网站采用了常用的“按标题”、 “按作者”、“按内容”等分类法。
5、投票、评选系统功能 投票系统是站内做一些小调查的工具,很直观的反映出当前调查结果。亦可作为一些
不记名投票评选活动。
3. 站点设计分析与功能实现
3.1 网站数据库设计
3.1.1 网站数据库需求分析 数计学院网站的数据库的需求分析是进行系统功能划分和系统设计最重要的一个环
节,根据系统数据流程图,可以得到 5 个数据库表:用户信息表(admin.db)、新闻信息 信息表(News.db)、投票信息表(vote.db)、留言簿和新闻评论管理(Review.db)、和公 告栏信息表(board.db),以下为系统所需的数据项和数据结构的使用情况:
1、用户管理:用户信息表,生成包括用户名、用户密码、用户性别和密码提示等信息。
2、新闻系统:新闻编号、新闻标题、新闻类型、新闻点击数、作者、发布时间、相关链 接等。
3、投票系统:投票信息表和投票内容、投票选项信息等。
4、留言簿和新闻评论管理:调用留言簿信息和新闻评论信息表,留言(评论)内容、署 名、邮件地址等。
5、公告栏:包括公告编号、公告标题、公告内容、发布时间等。
3.1.2 数计学院网站数据库
有些实体只是单独的存在,没有与它实体的关系,例如用来保存系统最初始配置的 config 表。但是有些实体之间存在着相互关系的,数据库 E-R 图如图所示。图中箭头所指 的方向按照约定是指 1:n 关系的 1 方。如果两边都没有箭头,则是 n:m 关系。
3.1.3 使用 ADO 访问数计学院网站数据库
在 ASP 中,访问数据库是通过内置的数据库访问组件(DataBase Access Component) 的 ADO(ActiveX Data Object)对象来实现的。它是对当前微软所支持的数据库进行操作 的最有效、最简单的方法,是一种功能强大的数据访问编辑模式,从而使得大部分数据源 可编程的属性得以直接扩展到 Active Server 上。
ADO 提供了简单的程序模型和完善的功能来处理数据,ADO 能够通过利用 ODBC(Open Database Connectivity)或 OLEDB(Object Link & Embedding Database)驱动程序编写 应用程序来访问和操作数据库。如图所示,无论采用的是 Access、SQL Server、Visual FoxPro、dBase 或其他的数据库,只要该数据库具有对应的 ODBC 或 OLE DB 驱动程序,ADO 对象就能加以存取。ADO 具有运行速度快、容易使用、占用内存和磁盘空间小的优点,特 别是对于大量用户同时访问时的 Web 站点时,这些优点显得更加重要。
1、创建和配置 ODBC 数据源
ODBC(Open Database Connectivity)即为开发数据库系统互连,它是微软开发的一
套用于开发数据库系统应用程序接口规范。ODBC 规范为应用程序提供了一套高层调用接口 规范和基于动态链接库的运行支持环境。使用 ODBC 开发数据库的应用程序时,只需要应 用程序调用标准的 ODBC 函数和 SQL 语句,而数据库的底层操作由各个数据库的 ODBC 驱动 程序来完成。所以,使用 ODBC 接口的数据库应用程序具有很好的适应和可移植性,并且 具备同时访问多种数据库的能力,彻底的扔掉了传统应用程序的缺陷。ODBC 驱动程序类似 于 Windows 下面的硬件驱动程序,对于使用者来说,驱动程序掩盖了不同的硬件间的差异
2、创建和配置 ODBC 数据源
当数据源创建后,必须提供一条使 ADO 定位,标识和与数据库通信的途径,这条途径 有两种建立方法:
1) 使用 DSN
创建和配置 DSN 的方法:开始/设置/控制面板/ODBC 数据源/System DSN 下单击“添 加”按钮,在出现的创建新数据源的对话框中选择驱动程序,如 Microsoft Access Driver(*.mdb),在弹出的“ODBC Microsoft Access 安装”窗口中指定数据源名 和 路 径 。 完 成 后 , 在 ASP 程 序 中 指 定 DSN , 如 <% cn.open”DSN=yourdsnname;UID=username;PWD=password”%>
(2) 在 ASP 文件里直接指定数据库文件所在的位置,对不同的数据源要设置的参数略
有不同。
如 Microsoft Access ODBC 参数的设置:
<% conn=”driver={Microsoft Access
Driver(*.mdb)};dbq=”&_server.mappath(“source.mdb”)%>
由于数据学院没有自己的 Web 服务器,数据学院网站放在远端的虚拟服务器上,因此, 建立和修改 DSN 的设置比较麻烦,而此方法直接指定远端数据库所在的位置恰恰解决了这 一问题。
3.1.4 ASP 站点与服务器端建立连接 当我们需要操作服务器端数据库时,第一步要做的便是要使数据库与服务器端建立连
接。这就需要使用 ADO 对象的 Connection 对象。
1、创建 Connection 对象
<% set cn=Server.CreateObject(“ADODB.Connection”)%>
创建了一个名为 cn 的 Connection 对象实例,通过这个个对象实例,就可以使用 Connection 对象提供的 Open 方法打开与数据库的连接,Excute 方法对表进行 SQL 查 询等
2、打开与数计学院数据库的连接 (1)用 Open 方法
<%
set cn=Server.CreateObject(“ADODB.Connection”)%>
cn.open “DSN=score99;UID=admin;PWD=””
%>
(2)用 ConnectionString 属性
<%
set cn=Server.CreateObject(“ADODB.Connection”)%> cn. Connection “DSN=score99;UID=admin;PWD=”” cn.Open
%>
DSN:指定连接的 ODBC 数据源名称
UID:提供用户的 ID,用于登录服务器端的数据库。Access 数据库接收每个用户;SQL 服 务器中的数据库提供了”admin”用户身份,密码为空
PWD:登录数据库的用户密码。 (3)直接在 ASP 中指定连接
对于 Access 数据库,相应的 ASP 程序为:
<%
Cn.open “Driver={Microsoft Access Driver(*.mdb)};DBQ=数据库文件名(包含 全路径);UID=用户名; PWD=用户密码”
%>
3、关闭 Connection 对象
cn.close
此方法可以切断 Connection 对象与数据库之间的连接,但是此对象还是存在于内存中, 如果要将创建的 Connection 对象从内存中移出,需要用语句
Set cn=nothing
3.1.5 使用 ASP 的 Recordset 对数计学院数据库作插入、删除、更新
在使用 Connection 对象打开数据库连接后,就可以用 ADO 对象模块提供的 Recordset
对象存取表的记录,包括读取、插入、删除或更新等。 下面先介绍 Recordset 对象几个常用的属性和方法:
属性:
AbsolutePosition:目前指针的绝对位置,其值在 1-ReordCount 属性之间。 AbsolutePage:当 Recordset 对象设置有分页时,该属性会返回目前的页码。 BOF:若指针位置位于第一条记录之前,返回 True,否则返回 False。 EOF:若指针位置位于最后一条记录之后,返回 True,否则返回 False。 Connection:设置记录的存放位置。若 Connection 的值设为 2(adUseServer),表示
记录存放在服务器端;若 Connection 的值设为 3(adUseServer),表示记录被下载到浏览 器端,这将会增加网络流量。
Filter:筛选记录。 MaxRecord:返回的最多记录条数。
PageCount:返回分页总数。
PageSize:当 Recordset 对象设置有分页时,PageSize 为每页的记录条数。 PageCount:设置指针在 Recordset 对象所包含的所有记录数。 CursorType:设置指针在 Recordset 对象的移动方向,
设置为 0(adOpenForwardOnly)时,表示指针只能向下一条记录移动,此为默认值; 设置为 1(adOpenKeyset)时,表示指针可以自由的上下移动,在之前读取的 Recordset
对象可以看到更新的记录,但看不到新增、删除的记录;
设置为 2(adOpenDynamic)时,指针可以上下移动,在之前读取出的 Recordset 对象可 以看到任何变化,但 Access 不致吃该设置;
设置为 3(adOpenStatic)时,是在 CursorLocation=3(记录下载到浏览器端)时的设 置,指针可以自由移动,但看不到读取后的记录的更新、添加、删除。
LockType:设置能否将记录写入表。1(adOpenForwardOnly)时,表示所有记录只读;
2(adOpenDynamic)时,表示当我们开始编辑某条记录的字段时,便锁定次记录,待编 辑完毕并调用 Update 方法进行更新之后,再解除锁定。
3(adOpenStatic)时,只有在调用 Update 方法进行更新的时候才锁定记录,若我们在 编辑某条记录后没有调用 Update,而继续移往其他的记录作编辑,ADO 会自动调用 Opdate 方法更新前编辑的记录,若要取消更新,可以使用 CanceUpate 方法。
4(adLockBatchOptimistic)时,允许以批量的方式进行更改记录 方法:
AddNew:在 Recordset 对象中插入新的记录,需要执行 Update 方法才算完成新增。 Clone:复制某个已存在的 Recordset 对象。
Delete:删除 Recordset 对象中目前指针所指到的记录。 MoveNext:指针下移一条记录。 MovePrevious:指针上移一条记录。 MoveFirs:指针移到第一条记录。 MoveLast:指针移到最后一条记录。
Move Num:指针下移 Num 条记录。
Open:取得 Recordset 对象,它可能包含表的所有记录或符合 SQL 查询的记录 Update:完成对 Recordset 对象中某条记录的更新
1、创建 Recordset 对象
Set objRS=Server.CreateObject(“ADODB. Recordset”)
2、Open 方法
objRs.Open Source Connection CursorType LockType CommandType Source:这时一个 command 对象或包含指令的字符串。 Connection:用来打开数据库连接的 Connection 对象。 CursorType:设置指针在 Recordset 对象中的移动方向。 LockType:设置能否将记录写入表
CommandType:设置处理参数 Source 的方式。
3、新增表的记录
objRS.AddNew Title,Content
新增的一条记录字段名称为 Title,数据为 Content,如:
objRS.AddNew Array(“新闻标题”,”新闻内容”),Aeeay(“测试新闻”,“测试 新闻内容”)即增加一条为新闻标题为“测试新闻标题”,新闻内容为“测试新闻内容”的记录。
4、读取表的字段名称与数据 读取字段名: 可用表格的方式建立,如:
读取字段值:
5、使用 Filter 属性来筛选记录
用 objRS.Filter 来筛选记录,设置属性时,可以包含任何逻辑运算,只要返回值为 True或 False。
6、设置分页浏览 当表包含很多记录而无法显示在同一页面时,将记录设置多页来分页浏览是很有必要 的,同时加上页次的超级链接,浏览者想看哪个页次的记录,只要点取其超级链接, 就可以看到该页次的记录。要做到这一点,只要充分利用前面已经介绍的几个属性
AbsolutePage(返回当前页码)、PageCount(分页总数)、PageSize(定义每页的记录数)。
3.1.6 ADO 存取数计学院数据库的实现
归纳起来,利用 ADO 存取数据库用以下步骤来实现, 首先,定义一个 ADO 连接对象,然后打开数据源
Set cn=Server.Createobject(“ADODB.Connection”) Cn.open “数据源”
数据源是在“控制面板”下的“ODBC32”设定的数据源名称。 其次,执行 SQL 命令,并将结果存储到 RecordSet 对象变量中
Set rs=cn.Execute(SQLstr)
第三,通过 RecordSet 集合取得记录的内容,其中常用的有: rs(“记录名称”):读取某个记录的内容 rs.eof:是否已指到最后一条,是为 ture,不是为 false rs.MoveNext:将 RecordSet 的指针移到下一条记录
最后,关闭数据库,有两个动作,一是 RecordSet,另一则是 Connection rs.Close
cn.Close
建立对象实例
打开数据源
将记录集存入 recordset 变量
用 recordset 的方法取得记录
关闭数据库
ADO 存取数据库
3.1.7 网站数据库详细设计
数计学院网站各基础数据库使用了 Access 数据库工具。该数据库包含 15 个不同专题 的表。下面是 5 个主要数据表,在这里做一个简要的说明。
1、Admin 表该表主要存储数据学院用户信息表,生成包括用户名、用户密码、用户性别和密码提
示等信息。
2、News 表该表主要存储新闻编号、新闻标题、新闻类型、新闻点击数、作者、发布时间、相关
链接等。
3、vote 表该表主要存储投票信息表和投票内容、投票选项信息等。
4、Review 表该表主要存储留言簿信息和新闻评论信息表,留言(评论)内容、署名、邮件地址等。
5、board 表 该表主要存储公告编号、公告标题、公告内容、发布时间等
3.2 数计学院网站页面设计
3.2.1 头部导航条
任何一个成果的 Web 应用都离不开导航功能。系统中的导航条分为两个部分:首部导 航条和尾部导航条。在多数 ASP 文件中都可以发现下 面的语句:
这行代码的功能是将首部导航条包含到当前页面中,这种方式可以使网站维持统一的风格。如果需要时对 top.asp 作了修改会反映到所有的包含其的文件中。
导航条维护了 Web 应用站点统一的风格和方便修改,也为浏览者能迅速和快捷的在站点内跳转提供了基础。
3.2.2 主体功能展现 数计学院网站是一个全面展示学院风采、科研成就等信息的站点,这就决定了站点的大部分功能都在首页中得以实现,如图所示,数计学院网站的各项重要功能都可以一目了 然:
图中标示 1、2、10 均为站点导航条,3 为站内公告栏,4 为站内检索,5 为各类新闻
3.3 网站重点代码的设计
3.3.1 强大的 ASP#include 指令
在一个 ASP 页面中,可以使用#include 指令把另一个文件的内容插入到当前的页面中: 这条指令读取该文件的全部内容并插入到该页面中,代替一行。这是 一种非常有用的插入 HTML 段落的技术。
通过把脚本和内容分开的方法,给页面提供了一个组成层次。这意味着如果对脚本进
行了修改,在客户端再次打开该页面时,脚本的修改情况自动的反映到使用包含文件的每 个页面中。例如,常见数据库连接的获取都作为一个单独的模块包含到所有的 ASP 页面中。
index.asp
…
conn.asp
…
<%
db=”admin/database/#sjxy.mdb”
set conn = Server.CreateObject(“ADODB.Connection”)
connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server. MapPath(“”&db&””)
conn.Open connstr
%>
…
这样当修改数据库连接时,所有包含 conn.asp 的页面引用的数据库连接都会得到修 改,从而大大减轻了代码开发的工作量。可以更好的保证软件的质量,这也是模块化和降 低软件之间耦合性思想的体现。
3.3.2 控制权限
小类管理员。各自有相应的权限管理文章信息。系统管理员拥有本站最高管理权限:
if session(“rank”)>1 then
response.Write “
response.End
end if
通过后台管理员的 rank 属性可以跟踪管理员的权限,rank 值从数据库中读出后是放 在 Session 中的。例如上边的这个操作只允许系统管理员具有,而 rank 值大于 1 的根据 约定不是系统管理员,所以会显示一个如上的报错页面。
系统中所有存储在系统中的密码都是可以 MD5 不可逆转的方式进行加密。加密的目的是防止通过打开 Access 数据库直接得到各个账号的密码,包括管理员。
rs(“password”)=md5(trim(request.form(password”)))
3.3.3 验证码登录的实现 为了防止恶意的使用程序不断猜测帐号密码,系统采用了验证码。验证码的的主要思
想就是在用户的登录界面随机生成一个数,在用户登录时同时输入这个数。用系统中记录 的这个随机数和用户的输入进行验证就可以防止恶意请求登录页。
使用验证码的难点在于如图将数字 9587 转换为一个 9587 的图片显示出来。这个功能在一个独立的 ASP 页面中完成,其中使用了 ADO 的 Stream 对象读写文件的内容。
<%
Option Explicit //强制申明所有使用的变量 NumCode
Function NumCode()
Response.Expires = -1//若将 Response.Expires 设置为负数或 0,则禁用缓存 Response.AddHeader "Pragma","no-cache"
Response.AddHeader "cache-ctrol","no-cache"//禁止使用缓存,上面几行代码的作
用是保证页面能够自动刷新,即使使用后退返回到原先的页面
dim zNum,i,j dim Ados,Ados1
Randomize timer
zNum = cint(8999*Rnd+1000) //生成随机数
Session("GetCode") = zNum //将随机数的值使用 session 来存放
dim zimg(4),NStr NStr=cstr(zNum) For i=0 to 3
zimg(i)=cint(mid(NStr,i+1,1)) //min 函数表示返回 NSir 字符串的从第 i+1 个位置开始的 1 个字符,这意味着 zimg(i)对应 zNum 的第 i 个字符
Next dim Pos
set Ados=Server.CreateObject("Adodb.Stream") Ados.Mode=3
Ados.Type=1
Ados.Open
set Ados1=Server.CreateObject("Adodb.Stream") Ados1.Mode=3
Ados1.Type=1
Ados1.Open//ADO 流 对 象 可 以 读 取 文 件 内 容 , Ados 流 对 象 就 是 读 取
include/body.Fix 的内容 Ados.LoadFromFile(Server.mappath("include/body.Fix")) Ados1.write Ados.read(1280) //读出 1280 个字节
for i=0 to 3
Ados.Position=(9-zimg(i))*320 //计算出在 Ados 流中的位置,即 9 减去这 个值再乘以 320
Ados1.Position=i*320//计算出应该在 Ados 流中写的位置,即 320 个字节写
一个数Ados1.write ados.read(320)//写从 include/body.Fix 中读出的 320 个字节
Next //循环处理四位数上的各个位
//Ados 流重新指向 include/body.Fix Ados.LoadFromFile(Server.mappath("include/head.fix")) Pos=lenb(Ados.read())//返回 Ados.read()一次读取的内容的字节长度 Ados.Position=Pos
for i=0 to 9 step 1
for j=0 to 3 //j 每增加 1,Positiond 的值增加 320,刚好可以和上面的值
对应起来
Ados1.Position=i*32+j*320
Ados.Position=Pos+30*j+i*120
Ados.write ados1.read(30)
next
next
Response.ContentType = "image/BMP" //写出的类型为一个 bmp 图片 Ados.Position=0
Response.BinaryWrite Ados.read() Ados.Close:set Ados=nothing Ados1.Close:set Ados1=nothing
End Function
%>
3.3.4 CSS 样式表
CSS 是 Cascading Style Sheets(层叠样式表单)的简称。更多的人把它称作样式 表。顾名思义,它是一种设计网页样式的工具。借助 CSS 的强大功能,网页将在您丰富的 想象力下千变万化。用很简单的 CSS 语句就可以实现许多需要专业软件才可以达到的效果。 利用属性可以设置字体、颜色、背景等页面格式;利用定位可以使页面布局更加规范、好 看;利用滤镜可以使页面产生多媒体效果。 在数计学院网站中,就是运用了该技术规范了站点字体的统一。
3.3.5 MD5 加密算法
MD5 是一种单向加密算法,只是对数据进行加密。没有办法对加密后的数据进行解密。 在数计学院网站中,MD5 加密运用在了用户登录密码的加密上。使得用户帐号安全得到保 证,数据库系统更安全。
4. 结语
当前,贵州民族学院数学与计算机科学学院网站经过测试,达到了预期的目标,并且 在学院网络小组的维护下正常使用。
4.1 网站建设目前存在的问题
1、安全隐患,由于数计学院网站是租用远端虚拟服务器端,这就在 IIS、ODBC 等方 面的设置上有所局限,这是自身无法保证的安全隐患。
2、网站的内容较单调。除了少数方面的内容比较丰富之外,其它方面内容大多只是 本组的简单介绍、师资介绍,少数的政治教学素材和资源的发布,内容比较单调。有些网 站的内容看似比较丰富,但真正适用的内容较少。
3、更新周期长,内容老化。网站建设是一项长期的复杂的系统工程,对网站内容进 行定期更新、维护是保持网站生命力的基本要求。但是从调查的实际情况看却不容乐观, 许多政治教研组网站是重一次性建设,轻后续建设,更新周期长。
4、页面死板,形式单一,技术含量低。表现在网页大多为静止页面,缺乏动感;大 多为纯粹的黑白文字页面,缺乏对眼球的吸引力和冲击力;页面编排大多为将众多链接简 单、呆板地堆砌起来,美感不足,使访问者继续浏览的兴趣大减。
5、缺乏交互功能和服务功能,表现为访问者的被动浏览,参与性、交互性较差。如 聊天室、BBS 等学院师生间交流平台缺乏。
6、网站的特色不突出。由于时间仓促,站点页面设计借鉴了其他兄弟学校的同类网 站建立起来。
4.2 加强数计学院网站建设的对策
1、提高学院师生的信息技术水平,转变教师教育教学观念,适应网络时代的特点。 在网络时代,教学的成效将更多地依赖于"交互式"的信息传输方式,教师之间以及教师与
学生之间的将会更加平等的互动交流。
2、 加强学校硬、软件投入。改变教学手段信息技术是一项高投入的工程,也是科技 含量最高、技术更新相当迅速的产业。
3、要把握好正确的建网原则,这一点很重要。主要包括: 方向性原则——网站资源健康向上、积极有益,在保证资源的统一性和多样性的同时,
要提倡内容能体现本组的特色,例如本组教师的原创成果; 针对性原则——网站内容、栏目设置、网页设计等都要针对师生的特点和本组的特色,
增强网站的亲和力和感染力,吸引师生主动参与,寓教于乐; 广泛性原则——网站建设不仅要调动本组内一切信息资源,同时要发挥广大同行与学
生参与的热情,扩大参与面,让师生在参与中共同进步; 服务性原则——要将教育与服务融为一体,增强网络服务功能,如,开设“建模导”、
和“资源共享”等栏目。
4、开设数计学院网站的互动与服务功能。通过电子邮件、聊天室、BBS 或者留言板等 形式,师生可以在平等、信任的情境中就普遍关心的热点、难点问题进行自由讨论、交流 互动。我认为,数计学院网站,首先应该是为本组教师提供一个网上教研的平台,这就有 别与其他的院校宣传性网站,也更能显示数计学院网站的特色功能——网络化的学院教 研。当然,数计学院网站还必须“走出去”,加强校际教研组之间的交流,共同发展。
各院校在开拓和利用网络这一新领域来开展宣传、教学工作辅助等已经做了有益的尝 试,取得了初步成功。例如,我校的建筑工程系
网站建设可以说是成功的,为我们提供了 样板。数计学院网站只是院务管理的一个小模块,今后我们将进一步努力,不断学习和研 究新技术,开发出更多更好的符合我院现代化办公的站点功能。
本文发布于
成都网站建设公司创新互联https://www.cdcxhl.com/
新闻名称:基于BS架构的网站制作论文
当前链接:https://www.cdcxhl.com/news/231163.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有网站制作等
广告
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联