基于Web的“教师答疑室”的设计与实现

论文价格:0元/篇 论文用途:仅供参考 编辑:论文网 点击次数:0
论文字数:**** 论文编号:lw202348132 日期:2023-11-23 来源:论文网
摘 要 基于Web的“教师答疑室”是综合运用ASP技术和数据库存取技术而设计开发的,它充分发挥了网络的优势,打破了传统的答疑方式的时空局限性,为师生随时随地交流提供了方便。该答疑室由用户模块、答疑模块和管理模块三个模块组成,相应地实现了三大功能:用户注册与登陆、师生讨论问题和管理员对答疑室的管理与维护。本文详细介绍了“教师答疑室”的功能特点、逻辑流程、界面设计和主要实现技术。

  关键词 ASP Web 数据库 网上答疑


  0 引言

  传统的答疑方式是一种面对面的交流,具有实时、直接的特点,教师和学生可以综合运用语言符号和非语言符号来传递信息,交流沟通。但由于它需要在固定的时间和地点进行,因而具有很大的不灵活性。而计算机网络技术日新月异的发展和Internet的普及为传统的师生交流开辟了一条崭新的渠道,在很大程度上弥补了传统答疑方式的缺陷。基于Web的答疑方式使师生交流不再受时空的限制,只要具备上网的条件,学生可以随时随地提出问题,教师也可以随时随地解答问题。这不仅能够拓展教师和学生的交流空间,增加教师和学生沟通的机会,拉近师生之间的距离,使一些平时内向胆怯的学生也勇于发言,而且通过师生之间的讨论,能帮助学生自己发现问题,提出问题并最终解决问题,从而增强学生的独立性、自主性和探索性。

  基于Web的“教师答疑室”就是针对以上原因而设计开发的。它使用当前流行的Web站点设计技术和开发工具,综合ASP技术,HTML和VBScript 脚本语言,用Microsoft Access作为后台数据库,Macromedia Dreamweaver作为开发平台。

  1 系统功能设计

  1.1 设计思想

   “教师答疑室”采用B/S结构,位于客户端的教师和学生只需用浏览器来使用本答疑系统,服务器端采用ASP技术来完成动态网页的生成和数据库的访问,后台数据库采用Microsoft Access。其实现原理如图1所示。


  1.2 功能结构设计

  从总体功能来说,“教师答疑室”分为三个模块:用户模块、答疑模块和管理模块,其功能结构如图2所示。

  1.3 系统逻辑流程

  “教师答疑室”的用户分为三类:管理员、教师和学生,他们的权限是不同的:管理员有最高管理权限;教师除了浏览、提出和回答问题,还负责所教课程的问题呈现页面的维护;学生可以浏览、提出和回答问题。图3给出了不同的用户以不同的身份访问“教师答疑室”时的逻辑流程。

  2 用户界面设计

  如果说,功能设计是网络答疑系统的灵魂,那么界面设计就是其不容忽视的外表,二者只有完美结合,达到形神兼备才能使访问者乐在其中,留连忘返。在进行界面设计时根据本答疑系统的用户特点,从整体布局、颜色搭配、设计风格等方面作了主要考虑,并结合动画效果,从而使系统的界面既美观大方又具有良好的交互性和用户亲和力。

  用户进入主页之后先要登陆,否则只能浏览留言,而不能发表留言。主页呈现问答的总体情况包括问题数、回复数及最新问题等,分为两个版块:站务管理版块和教师答疑版块。

站务管理版块分为站务公告区、新手上路区和综合意见区,列出了各个区的版主、主题数、回复数、最新问题及其作者和发表时间。

  教师答疑版块的主题按照各门课程分类,列出了各门课程的任课教师、问题数、回复数、最新问题及其提问者和提问时间。用户只需点击课程名称,即可进入相应课程的问题呈现页面。

  3 主要实现技术

  3.1 ASP与Access数据库连接技术

  “教师答疑室”的用户信息、问题及其回复等都是存储在后台数据库中的,要存取和管理数据库,首先必须创建ASP与数据库的连接。具体实现方法如下:

  首先在控制面板的管理工具面板启动数据源(ODBC)管理器,在打开的ODBC数据源管理器窗口中选择系统DSN选项卡;接着单击[添加]按钮,选择“Microsoft Access driver (*.mdb)”单击[完成]按钮,在弹出的“ODBC Microsoft Access 安装”窗口输入数据源名“infodb”及对此连接的描述“BBS后台数据库”,选择要连接的数据库“infodb.mdb”,单击[确定]按钮。至此,系统DSN就创建成功了。

免费论文下载中心 然后,在要与数据库连接的ASP中利用以下一段代码即可以实现与数据库的连接。

Set conn= Server.CreateObject("ADODB.Connection")

conn.Open"dsn=infodb"

  3.2 分页显示技术

  对于问题呈现页面及回复页面,由于内容比较多,如果都在一个页面上显示,势必会使网页很长,用户查看时要不停地向下拖动,这样很容易让人产生厌烦心理。为了使用户方便快速地浏览网页,在内容比较多的页面都采用了分页显示技术,部分代码如下:

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

  rs.Open str1,conn,1

  dim sumcount

‘如果记录集不是空的,就执行分页显示。

  if not rs.bof and not rs.eof then

   sumcount=rs.RecordCount

   rs.MoveFirst

  dim page_no,page_total,i,j

  ‘下面一段判断当前显示第几页,如果是第一次打开,为1;否则由传回参数决定。

   if request.QueryString("page_no")="" then

   page_no=1

   else

   page_no=cint(request.QueryString("page_no"))

   end if

  ……

  next

  通过分页技术,设置每页显示10个问题,使问题呈现页面不再冗长,用户只要点击要浏览的页面号码就可以跳转到相应的页面。与不采用分页显示技术相比较,不仅方便了用户浏览,而且界面也更加美观了。

  3.3 用户端的检测技术

  由于ASP文件是在服务器端执行的,当用户提交信息时,难免会有出错信息,这时若将ASP文件直接提交给服务器,服务器在执行过程中发现错误,再以HTML文件传送给客户端,这样一个来回传送的过程会浪费很多时间。因此,有必要在客户端对用户提交的信息进行检查,确认没有错误之后再传送到服务器端解释执行。只需要用VBScript编写一个函数,即可以实现用户端检测技术。在“教师答疑室” 的ASP文件中有很多都用到了该技术。下面以用户注册页面为例,给出实现该技术的部分核心代码。

  Sub check()

  ‘下面一段判断用户呢称和密码是否为空

   if form1.username.value=empty then

   msgbox "用户呢称不能为空!"

   focusto(0)

   exit sub

  end if

  if form1.password.value=empty then

   msgbox "用户密码不能为空!"

   focusto(1)

   exit sub

   end if

   ……

   End Sub

  然后再把待检测的表单属性设置为<input type="button" name="submit1" value="提交" onclick="check()" style="color: rgb(0,33,99)" >,当填写完表单提交时,若有必填项未填或有错误,都会弹出提示出错的窗口。这样就在用户端完成了对提交表单信息的检查。

  3.4 动态链接技术

  “教师答疑室”的用户信息、问题及回复等都是不断更新的,相伴随的链接也不能事先设定,而是随着内容的变化链接也有所不同,因此必须运用动态链接技术才能保证网页的顺畅链接。以问题呈现页面为例,实现动态链接主要用到了如下代码:

<%for i=1 to rs.PageSize%>

<tr>

<td align="center" bgcolor="eff7fe"><font color="#003399" size="-1">

<a href="hits2.asp?course_id=<%=course_id%>&list_id=<%=rs("ID")%>">

<%=rs("title")%></a></font></td>

</tr>

  <% rs.MoveNext

  if rs.eof then

  exit for

  end if

  next%>

  3.5 对用户权限的限定

   针对管理员、教师和学生对“教师答疑室”的访问权限不同,在数据库表userinfo中设置了一个字段authority,管理员的权限最高,为2,教师次之为1,学生权限最低,为0。当ASP对数据库进行访问时,根据用户的权限不同,显示的信息也有所不同。以主页站务管理版块中的站务公告区为例,该区域只有管理员有权发起新主题,而教师和学生只可以浏览和回复主题,要实现不同权限用户的区分,用到了以下一段代码。

  ‘当用户欲在站务公告区发表新主题时,先判断用户权限是否为2,若为2则允许发表,否则提示出错。

  if course_id=1 then

  if session("authority")=2 then

  str2="insert into question(title,question, course_id, sender, time_send) Values('"&title&"','"&question&"',"&course_id&",'"&sender&"','"&time_send&"')"

  conn.execute(str2)

  else

  response.redirect"newworkfail.htm"

  end if

  else

  ‘在站务公告区以外的讨论区,则任何用户均可发表新主题。

  str2="insert into question(title,question,course_id, sender, time_send) Values('"&title&"','"&question&"',"&course_id&",'"&sender&"','"&time_send&"')"

  conn.execute(str2)

  end if

  通过以上代码,当管理员进入该页面时,发起新主题会显示出来,而当教师和学生进入该页面时则发起新主题不会显示,从而使教师和学生无权发表新主题,达到了限定权限的目的。

  4 结束语

  网络技术的发展和Internet的普及为现代教育提供了强有力的技术支持,基于Web的“教师答疑室”充分发挥了网络的优势,克服了传统的答疑方式的局限性,为师生随时随地交流提供了方便。该系统开发完成后能够在网络环境下正常运行,各种预期功能均得到实现,并且由于本系统的所有数据都是动态的,因此便于扩展,具有较好的可移植性。

  

参考文献

  [1] 宣小平 等.ASP数据库系统开发实例导航.人民邮电出版社,2003

  [2] 立雅科技.Dreamweaver & ASP网页整合大全.电子工业出版社,2004

  [3] 杨印根 等.基于Internet的在线异步答疑系统.计算机与现代化,2002(6)

  [4] 李爽,陈丽.国内外网上智能答疑系统比较研究.中国电化教育,2003(1) 免费论文下载中心

如果您有论文相关需求,可以通过下面的方式联系我们
客服微信:371975100
QQ 909091757 微信 371975100