收结构两个部分。
服务器结构中规定了服务器的传输设定、信息传输格式及服务器本身的基本开放结构。主要采用Windows2000SERVER系统+IIS5.0架构。以ActiveServerPage为服务器端处理程序。数据库采用MicrosoftACCESS2000。
客户机资源接收结构规划出信息接收格式以建造适当的信息接收工具,如:浏览器(brower),采用WWW的WEB页面的形式实现。其过程如图四所示。
这种架构通过消息传递机制对话,由客户端发出请求,通过ASP(ActiveServerPage)程序将消息传送给服务器,服务器与数据库建立连接进行相应的处理,经传递机制将结果传回客户端,再以web页面的形式显示出来。
当使用者利用浏览器作为输入界面,提出问题或输入查询请求,浏览器将这些数据返回给服务器,服务器对这些数据进行一些处理,通过ADO创建数据对象,根据用户的请求对数据进行相应的操作(或是将数据存入数据库,或者是对数据进行查询等),最后服务器将执行的结果再通过ASP程序返回给浏览器,通过WEB页面显示出来,其传输过程如图所示
下面将就系统中的其他几项主要技术给予简单介绍。
4.1图表、文件上载技术
图片、流程图或是表格数据等信息是理科学生在说明问题时常常需要用到的,它们是表达观点的重要组成部分。但是这些信息无法在普通的文本框中显示出来。因此,答疑系统提供了文件上载的功能,即允许使用者(教师或学生)在表述自己的观点的时候,上载图片或其他文件(*.bmp、*.jpg、*.gif或*.doc、*.ppt、*.zip等文件)以更清晰地表达自己的意思。
ASP处理上载文件,需要处理从客户端提交上来的原始数据。上载程序为使用者提供了选择本机文件的文件框,用户选中欲上载的文件后,按提交按钮,Asp程序即利用带enctype特征的Form域(如下代码示例)将要上载的文件以二进制流的形式传递到服务器端,而后在服务器端接收数据,并利用Asp文件截去二进制流中的文件头、文件尾,只保留数据正文部分,经过处理后存放在服务器端。本系统的具体实现方法如下:本系统使用了一个asp的上传组件--LyfUpload.dll,只需要在服务器端安装该组件,就可以通过少量的代码实现文件的上传。
注册组件发法:regsvr32.exe物理路径+LyfUpload.dll
文件上传到指定目录的发法:(具体的代码)
Setobj=Server.CreateObject("LyfUpload.UploadFile")
txt=obj.request("text1")'得到form元素的值
Response.Write("文本框1的输入值是:"&txt)
Response.Write""
ss=obj.SaveFile("file1","C:\temp",true)'保存文件到服务器
aa=obj.filetype("file1")'得到文件的Content-Type
cc=obj.FileSize
ss1=obj.SaveFile("file2","C:\temp",true)'保存文件到服务器
aa1=obj.filetype("file2")'得到文件的Content-Type
cc1=obj.FileSize
ifss<>""then
Response.Write"选择的文件已经上载到服务器!"
Response.Write("文件名:"&ss)
Response.Write("Content-Type:"&aa)'得到Content-Type
Response.Write("文件大小:"&cc)
endif
ifss1<>""then
Response.Write"选择的文件已经上载到服务器!"
Response.Write("文件名:"&ss1)
Response.Write("Content-Type:"&aa1)'得到Content-Type
Response.Write("文件大小:"&cc1)
endif
由于文件名在该系统中被保存入了相应的数据表中,所以很容易通过判断是否有相同的文件名来防止同名覆盖的问题。
4.2全文检索技术
无论是教师模块还是学生模块,都可按照某种方式输入关键字来查询问题或答案。通常这个功能要通过在SQL语句中使用like来实现。
一个简单的like查询例子:
sql="select*fromproblemwheretitlelike'%"&request("keyword")&"%'"
查找包含有关键字的标题。
4.3ZIP自解压
zip压缩包的自解压,是本系统在添加精品文章时的关键技术,也是该功能模块的核心技术。所谓的zip压缩包的自解压,就是指zip压缩包在服务器上可以通过asp程序来自动将其解压缩到指定的目录。
具体实现代码和相关的说明:
setwshell=server.CreateObject("WScript.Shell")
wshell.run"d:\winrar\winrar.exexc:\jingpin\计算机系统结构的发展.htm.zipc:\jingpin",0,false
'将指定目录下的ZIP压缩包解压到指定的目录
ifissuccess=0then
response.redirect"filedelete.asp?class=onefile&filepath=c:\jingpin\计算机系统结构的发展.htm.zip"
'删除已经解压完成的压缩包
else
response.redirect"filedelete.asp?class=onefile&filepath=c:\jingpin\计算机系统结构的发展.htm.zip"
'删除解压失败的压缩包
endif
其实这是利用了winrar软件的一个接口完成了一次后台的调用过程。这里有些注意点:a要解压的文件的完整路径b安装winrar的完整路径c要解压的目的路径。
结束语
网上答疑系统的实现,弥补了远程教育在师生交流中的缺陷,使得师生在网络学习过程中也可以向现实学校中一样,有一个直接面对面交流的机会。本系统包含了两种典型的答疑方式--实时和非实时,使得答疑交流更加完善。同时开设了系统管理员来维护后台数据库,有利于数据的动态更新和系统的稳定。由于本系统采用ASP、ACCESS、IIS技术,所以具有较高的动态性,交互性和高效性;又由于本系统的所有数据都是动态的,因此具有易扩展性,应用前景也相当广阔。
参考文献
[1]教育部现代远程教育资源建设委员会编《现代远程教育资源建设指南》1999.11
[2]武戎《基于WWW的远程教育中的答疑与讨论系统》《现代教育技术研究与应用》高等教育出版社1999(239)
[3][美]StephenWalther著希望图书创作室译《ActiveServerPages2.0Unleashed》北京希望电子出版社
??
??
??
??
浙江师范大学计算机科学与工程学院99级毕业设计--基于ASP的网上答疑系统的设计
18
计算机科学与工程学院毕业设计
上一篇:
ASP网上盆景系统(通过答辩)(论文和程序)
下一篇:
成本管理详细介绍