APP下载

基于ASP的网上办公系统的设计与实现

2015-05-30黄戌霞

科技资讯 2015年30期
关键词:S模式数据库

黄戌霞

摘 要:在网络应用日益普及的今天,无纸化网络办公自动化系统的应用将是目前企事业单位提高办公效率的一个必然趋势。该文从网上办公系统建设的实际出发,首先简单地阐述了办公自动化系统的开发背景,接着简要介绍了网上办公系统的设计方案,详细介绍了系统的主要功能模块的划分,重点介绍了基于ASP进行设计和开发的论坛的具体实现方法和关键技术,以及利用ASP控件访问WEB数据库服务器的方法和技巧。

关键词:数据库 ASP Access OA B/S模式

中图分类号:TP311 文献标识码:A 文章编号:1672-3791(2015)10(c)-0008-03

办公自动化系统(Office Automation System简称OAS),是伴随着企业对信息化建设和Internet技术的广泛应用而应运而生的[1]。该系统采用B/S模式开发,将ASP技术和Access数据库相结合,实现了信息从表态发布向动态发布的转变。

1 系统的运行环境与开发平台

系统选择Windows 2000 Server作为构建该系统网络基础平台,用ASP(Active Server Pages,活动服务器网页)和ACCESS结合,创建和运行动态、交互、高效的Web服务器应用程序[2]。

该系统采用基于WEB的B/S模式平台,如图1所示。

2 系统的总体设计

该网上办公系统的主要功能如图2所示。

3 与数据库的连接

在Web数据库中,用户通过浏览器就可以方便地完成对后台数据库中数据的插入、删除、查询和修改等操作,这样的模式极大地简化了操作过程,为用户使用后台数据库中的数据提供了便利[3]。

下面以会议管理模块为例,介绍其具体的实现方法和技术。

3.1 实现与数据库的连接

在该系统的设计中,把此连接数据库语句存储到一个独立的文件conn.asp并放在文件夹Connection下,这样在每次访问数据库时,无须重复编程,只要包括该文件即可,减少了代码的冗长[4]。

3.2 访问数据库

通过使用ADO中的Connection和Recordset对象就能够实现对网络数据库[5]的访问。结合SQL命令,设定查询条件,對数据库进行查询。

3.3 关闭数据连接

在使用结束后要及时关闭与数据库的连接,避免占用资源。

4 主要模块功能的实现

4.1 会议管理模块

在一个企业中,大大小小的会议是必不可少的。那怎样才能在最短的时间内将会议的时间、地点等信息通知到位呢?会议管理模块就是在这种需求下产生的。在这里,所有的员工都可以看到会议记录,但是只有拥有“系统”或“读写”权限的用户才可以录入、删除会议记录。

4.1.1 会议的录入

在录入会议各项信息时,先判断会议时间是否为空,如果为空提示输入会议时间,如果不为空且输入格式符合提示标准,则接着判断会议主持人是否为空,若为空则提示输入主持人,若不为空则接着判断下一个要输入的信息,直到所有信息都不为空时,向数据库提交该新记录。

4.1.2 会议的删除

当会议已经过了有效期,这时系统管理员就应该对这些记录进行管理。只有管理员才能有删除的操作。判断权限的关键代码如下:

if trim(rs_user("purview"))<>"只读" then

如果确定要删除,其代码如下:

<% Del= "DELETE FROM Tab_meeting WHERE ID =

"&request.querystring("ID")&" "

conn.Execute(Del) %>

4.2 论坛模块的结构、原理

论坛可以提供开放性的讨论区,用户可以在此发表自己的观点、交流技术、经验等,其他用户可跟贴发表自己的见解。

4.2.1 用户的权限

访问论坛的用户分为两种:

(1)可登录系统的所有人员。这些用户可以在论坛内浏览帖子、发布帖子、搜索感兴趣的帖子、回复关注的帖子。

(2)论坛管理员。除可享有上述权利外还可以编辑、删除所有的帖子,修改论坛的设置。

4.2.2 帖子的显示

这是论坛的主要部分,它显示出了论坛数据库中所有帖子的主题、作者、人气、回复、最后回复时间等信息,便于访问者检索、查阅。

4.2.3 帖子内容的显示

当用户点击某一帖子的标题时,将会看到该帖的内容及所以回复该贴的标题和内容。

4.2.4 回复他人提交的帖子

当用户对某一帖子的内容感兴趣,需要回答或发表看法时,该用户将提交一份新帖子到论坛的数据库,作为回复前者的帖子。该帖子的标题和内容只有在显示被回复的帖子的内容时才被顺序(按发布的时间先后顺序)显示出来。例:A发布了一个新贴,B、C、D先后对该贴子进行了回复。当其他用户再去浏览A所发布的帖子时依次看到的是A帖子的标题和内容、B帖子的标题和内容、C帖子的标题和内容。

4.2.5搜索帖子

用户可以根据自己的需要输入所要查询的帖子的主题进行搜索。

4.2.6 联系我们

在此页面中,用户可以就系统问题与开发人员进行联系。将鼠标移至邮箱地址处点击即可直接发送Email,为用户节省时间。

4.2.7 论坛帮助

简要的介绍了论坛的使用规则及注意事项。

下面将重点讨论几个具有典型性的子模块的设计思想和实现过程。

4.3 分页显示帖子主題

鉴于论坛页面的可视性,当包含很多记录而无法显示在同一页时,要对帖子进行分页设置来显示。该模块就可以实现将数据库中的帖子主题按最后回复时间的降序排列分页显示出来,并在显示页面底部显示帖子总数和页数。

在创建数据库链接并创建数据集后,开发人员指定主题页面每页显示16条帖子,回复页面每页显示8条帖子,通过传递参数的超级链接实现分页显示记录。这样,通过一次次的循环,每次只向用户的浏览器返回固定条数的帖子的主题,直到数据库的记录指针未指向记录的末尾。最后释放数据库的连接对象和记录设置对象。而退出循环的条件是数据库的记录指针未指向记录的末尾与行计数器大于0。关键代码如下:

<%if page>1 then%>

上一页

<%end if%>

<%if page

下一页

<%end if%>

显示页面如下:

4.4 加帖子

设置论坛是为了实现信息的交流,那么该企业中的任何员工均有权在版块发表的自己的意见建议、心得体会之类。考虑到信息交流的互动性,开发人员必须知道什么人发表了什么,所以当用户发表新贴时,必须填写要发表帖子的标题、姓名或所在部门、要发表的内容。

4.5 回复帖子

当员工浏览论坛的时候,若对某一主题感兴趣或者可以提供发表者所需要的信息时,用户就可以对该主题进行回复。该子模块的主要功能是在用户发表的帖子和被回复的帖子之间建立联系,从而在显示某个帖子内容的同时将所有回复它的帖子的内容都显示出来。

4.6 论坛管理登录

鉴于数据库的后台维护的必要性与安全性,增加了对论坛数据信息的管理。由于数据信息的管理只有使用该系统的论坛管理员才能使用,所以设置了登录页面来验证管理员的合法性。

首先,先取得用户输入的用户名和密码,然后通过数据库admin.mdb表对信息进行核对,判断有无此用户,若无则页面重定向到erro.asp文件,并在页面显示“你不是管理员”的提示信息;若有则接着判断密码是否正确,不正确则显示上述错误提示页面,只有当用户名与密码都匹配时才能正常登录管理页面,转向后台操作。

由于只有论坛管理员才能够对帖子进行编辑、删除,并修改论坛设置,因此在程序中利用用户的Session变量进行判断,防止用户超越权限进行操作[6]。在模块中,程序将该用户的操作权限赋予Session变量a,供后面的程序使用,关键代码如下:

if pass=rs("pass") and name=rs("name") then

session("a")="1"

4.7 删除帖子

由于论坛数据繁多,考虑到系统的运行速度和数据的管理,就需要管理员删除一些无用或者过期的数据,以便腾出空间存放更多的信息。这些无用的信息包括两种:一种是用户发表的整个主题(包括被回复的帖子),另一种是用户回复的帖子。所以在管理员成功登录后,就应该有选择的删除这些无用的信息。

删除帖子是最为简单的一部分,用SQL的delete语句即可以实现。

4.8 搜索帖子

为了方便用户在众多帖子中快速查找到自己所发表的或所关注的帖子,该模块实现按用户要求搜索相关帖子。当用户输入需要查询主题的关键字时,将返回数据库主题包含此关键字的相关帖子的信息。

4.9 修改设置

当管理员身份登录成功之后可以对论坛帖子主题显示的背景颜色、回复显示帖子数和每页显示主题数等的修改设置,以实现页面的美化。另外,管理员还可以根据个人需求更改私人的用户名和密码。

5 结语

由于能力有限,经验不足,系统中还有些不尽如人意之处,如安全性能不够高。系统在技术指标上已经达到预期的水平,对用户请求的响应速度能够满足用户需要;界面简洁、友好,菜单式的布局让用户更易于掌握。

参考文献

[1] 蒋伟钢.基于ASP的动态网站核心技术分析[J].福建电脑,2005(2):30-32.

[2] 张君,武装.ASP技术下的网络办公自动化系统[J].电子技术,2004,31(6):24-25.

[3] 许松明.基于ASP技术动态网站的开发与研究[J].湖南师范学院学报2005,27(1):138-140.

[4] 张景峰.ASP程序设计教程[M].北京:北京交通大学出版社,2005.

[5] 微软公司,著.Microsoft Office Access2003[M].铁军,等,译.北京:高等教育出版社,2006.

[6] 李严,于亚芳,王国辉,等.ASP数据库开发实例解析[M].北京:机械工业出版社,2005.

猜你喜欢

S模式数据库
数据库
集团公司OA系统的研究与开发
S模式空管二次雷达询问与监视技术研究
铝材B2B电子商务系统设计与实现 
基于ASP.NET的就业见习管理信息系统设计与实现
数据库
数据库
数据库