版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE37摘要在现代的科学信息技术之前,传统的教学模式已显露出它尚存的不足之处。随着科学信息技术飞速发展,网络技术的广泛应用,网上在线学习作为一种新的教学模式也随之孕育而生。这种新的教学模式,能很好弥补传统模式存在不足,优化教学资源,改善教学环境,提高教学效率。本次毕业设计,就是对在线学习模式的一次深刻的探索研究,并在此基础之上,在DreamwerverMX开发环境中,利用ASP,VBbscript、Javascript脚本语言,结合SQLServer2000后台数据库的运用,开发出一个操作简易,界面清晰,具有在线教案管理、在线学习交流、在线作业管理、在线考试管理、在线用户信息管理等多种功能的在线学习系统。在该系统的设计实现过程中,主要是以VFP课程在线学习为例,为教师与学生提供一个功能齐全、实用性强的VFP课程在线学习平台。关键词:在线学习,VFP,DreamweaverMX,SQLServer,ASPABSTRACTThetraditionalmodeofteachinghasshownitsremainingdisadvantagesbeforethemodernscienceandinformationtechnology.Withtherapiddevelopmentofscienceandinformationtechnologyandthewidelyapplicationofnetworktechnology,onlinelearningasanewteachingmodelemerges.Thisnewmodeofteachingcanmakeupthedeficienciesofthetraditionalmodel,optimizeteachingresources,promotetheteachingenvironmentandimproveteachingefficiency.Thegraduationprojectisaprofoundexplorationandresearchofon-linelearningmodel,basedonwhich,asimplyoperatedwithclearinterfacestudysiteincludingonlinemanagementsystem,onlinelearningexchanges,onlinehomeworkmanagement,onlinetestmanagement,onlineuserinformationmanagementandotherfunctionsisdevelopedaccordingtoASP,VBbscript,JavascriptscriptinglanguageandSQLServer2000fordatabaseapplicationinDreamwerverMXdevelopmentenvironment.Duringthedesignandimplementationofthelearningwebsite,anonlinelearningplatformwithfunctionalandpracticalVFPcourseswillbeprovidedforteachersandstudentsbasedonthesampleofonlineleaningofVFPcourses.Keywords:Onlinelearning,VFP,DreamweaverMX,SQLServer,ASP目录摘要 IABSTRACT II第1章引言 11.1VFP在线学习系统开发背景与意义 11.1.1背景 11.1.2意义 11.2研究内容 2第2章开发环境简介 32.1Dreamweaver简介 32.2ASP语言环境简介 32.3IIS简介 42.4ODBC数据库访问技术 42.5脚本语言的简介 52.5.1JavaScript脚本语言 52.5.2BScript脚本语言 52.6本章小结 5第3章系统概述 63.1功能需求分析与设计 63.2实体——联系图 63.3网站的逻辑方案 93.4开发过程分析 103.5数据库设计 113.5.1数据表的概要说明 113.5.2主要数据表的结构说明 123.6本章小结 15第4章VFP学习网站的总体设计 164.1网站基于B/S体系 164.2网站功能模块结构的设计 174.3本章小结 18第5章系统详细设计与实现 195.1关键知识点介绍 195.1.1模板 195.1.2openScript函数 195.1.3Lyfupload文件上载组件 195.1.4页面导航条 205.1.5分页显示 215.1.6数据库中的数据表字段导入到EXCEL表 215.2注册和登录模块 215.3教师管理模块 225.3.1添加教师信息功能实现 235.3.2修改教师信息功能实现 235.3.3删除教师信息功能实现 245.3.4查询教师信息功能实现 245.3.5教师信息转换EXCEL表保存功能 245.3.6管理员对教师留言功能实现 245.4学生管理模块 255.5教学资料管理模块 255.5.1教学资料管理模块教师端功能实现 255.5.2教学资料管理模块学生端功能实现 265.5.3PPT教案的下载学习功能 275.6考试管理模块 285.6.1考试管理模块教师端实现 285.6.2考试管理模块学生端实现 335.7作业管理模块 365.7.1发布作业功能实现 365.7.2删除作业功能实现 365.7.3下载作业功能实现 365.7.4上交作业功能实现 375.7.5批阅作业功能实现 375.8留言板模块 385.8.1留言板学生端的实现 385.8.2留言板教师端的实现 395.8.3留言板管理员端的实现 405.9公告栏模块 405.10答疑教室模块 415.10.1答疑教室学生端的实现 415.10.2答疑教室教师端的实现 415.11讨论区模块 425.12个人信息管理模块 445.13调查管理模块 445.13.1学生端的实现 445.13.2教师端的实现 445.13.3管理员端的实现 445.14本章小结 45第6章结束语 46致谢 47参考文献 48第1章引言1.1VFP在线学习系统开发背景与意义1.1.1背景随着知识经济的到来,人们的学习模式受到了前所未有的冲击,各种新的学习模式如潮水般涌现,在所有学习模式中,最具有冲击力的便是随着网络技术发展而出现的网络化学习,又称在线学习。它是通过在网上建立教育平台,学员应用网络进行学习的一种全新方式。这种学习方式是由多媒体网络学习资源、网上学习社区及网络技术平台构成的全新的网络学习环境。目前,互联网正以惊人的速度发展,其应用的领域几乎无所不包!人们纷纷上网学习,期望能更有效、更便捷地获取对自己有用的知识[1]。E-Learning在线学习是一种新型的学习方式。在倡导“自主学习”、“协作学习”、“继续学习”、“终身学习”的今天,越来越多的人加入到E-Learning在线学习的行列中,成为新型学习方式的实践者和受益者。也许,在不远的将来,ELearning在线学习将是学习者获取知识、开阔视野、增长才干最便捷和最有效的途径[1]。利用网络为学生提供一个学习的园地,定位于在校学生学习交流的平台,其面向对象为在校学生。就硬件环境而言,网络已经基本普及,学生对象的电脑拥有数也达到了进行网上交流的基本要求,通讯条件可以满足要求;在青年人对新生事物的接受速度快,工作生活节奏高,并能充分利用网络,思想意识形态上的条件也具备[2]。1.1.2意义在线学习系统为众多的学习者提供了及时的、个性化的学习机会。在线学习环境突破了时间和空间的限制,具有自主性、协作性、非线性、间接性、交互性和开放性等优点[3]。在国家教育部对高等教育中信息技术的要求里,要求各高校要使学生掌握基本的计算机操作技能,掌握程序设计的基本概念。针对这个要求,各高校一般都对非计算机专业的学生开设一门计算机基础操作(也就是Windows,Word,Excel之类的课程)和一门与程序设计有关的课程(我们学校根据专业不同,开设有C语言,VFP数据库操作,VB三门课程)。VFP课程主要是让学生掌握一些数据库的基本概念和一些简单的程序设计概念,它的内容比较多,因此仅仅在课堂上的学习时间是不够学者学好VFP这门课程的,而本系统的设计与实现,可以为VFP的学习者另外提供一个简单,易懂的学习空间,这样他们不仅在学校可以学到相关知识而且在家也可以通过网上来继续学习,就可以方便大家,同时还可以提高人们的学习兴趣。1.2研究内容学习网站的建设需要将信息技术与VFP课程内容整合在一起,这样才能充分发挥信息技术开放性、交互性、共享性、超媒体和大容量的优势。围绕课程的教学目标组织各种学习资源,创设学习情境,使学习者通过学习网站的学习全面掌握课程的知识、技能,并形成运用知识技能分析、解决问题的能力。因此建设该学习网站应具备以下四个方面的基本内容:学科知识,具体是指围绕教学目标的要求将相关的文本、图片、动画等教学媒体,根据教学设计组织起来的,制作成以网页形式呈现的网络课程。学习资源,具体指按一定分类原则,进行搜集、整理的与VFP内容相关的资源。并为资源的上传、下载、更新、检索提供管理系统。学习工具,例如为开展协作式学习而提供的留言板、讨论区、答疑教室等网络交流方式。评价学习,评价包含了对学生学习过程进行跟踪而形成的过程性评价和通过对学生习得知识的效果进行的结论性评价。将两者结来,形成对学生学习情况客观的评价结果。第2章开发环境简介2.1Dreamweaver简介Dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页[4]。其特点有以下几方面:制作效率高:Dreamweaver可以用最快速方式Fireworks,FreeHand,或Photoshop等档案移至网页上。网站管理方便:使用网站地图可以快速制作网站雏形,设计,更新和重组网页。改变网页位置或档案名称,Dreamweaver会自动更新所有连结。控制能力强:Dreamweaver是唯一提供RoundtripHTML、视觉化编辑与原始码编辑同步的设计工具。全方位的呈现:利用Dreamweaver设计的网页,可以全方位的呈现在任何平台的热门浏览器上。DreamweaverMx2004
是
建立
Web
站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它来快速创建界面吸引人并且基于标准的站点和应用程序[4]。2.2ASP语言环境简介ASP是ActiveServerPages(动态服务器主页——MicrosoftActiveServerPages)的缩写,它是一个服务器端的脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式、高效率的站点服务器应用程序[5]。ASP可以胜任基于微软Web服务器的各种动态数据发布。ASP简单、易学、容易实现,并且支持现今绝大多数通用数据库,所以ASP是学习Web应用程序开发的首选。2.3IIS简介InternetInformationServer的缩写为(IIS)是一个WorldWideWebserver。Gopherserver和FTPserver全部包容在里面。它是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事[5]。2.4ODBC数据库访问技术ODBC(OpenDatabaseConnectivity)是由微软公司提出的一个用于访问数据库的统一界面标准。ODBC是基于结构化查询语言(SQL),使用SQL可大大简化其应用程序设计接口(API)。其接口的优势之一为互操作性,程序设计员可以在不指定特定数据源情况下创建ODBC应用程序[6]。ODBC的程序流程图如图2-1所示。SQLFreeEnvSQLFreeEnvSQLFreeConnectSQLDisconnectSQLConnectSQLALLocConnectSQLALLocEnvOtherODBCFunction图2-1ODBC程序流程图2.5脚本语言的简介2.5.1JavaScript脚本语言JavaScript是由Netscape公司开发并随Navigator导航者一起发布的、介于Java与HTML之间、基于对象事件驱动的编程语言,通过JavaScript可以做到响应用户的需求事件(如表单的输入),这样当一位使用者输入一项信息时,它不需要通过网络传送到服务器端进行处理再传回来的过程,而可以直接在客户端进行事件的处理。因它的开发环境简单,不需要Java编译器,而是直接运行在Web浏览器中,而因倍受Web设计者的所爱[5]。2.5.2BScript脚本语言VBScript是VisualBasicScript的简称,即VisualBasic描述语言,有时也被缩写为VBS。VBScript是微软开发的一种脚本语言。VBScript与VB的关系是VBScript是微软公司推出的一种脚本语言,它源自VisualBasic,可以说是VB的一个简集,如果学过VB或者学过编程,VBScript将会很容易掌握。如果没有学过编程,VBScript可以说是最容易入门的语言了。VBScript的唯一数据类型VariantVBScript只有一种数据类型,即Variant。该类型在使用的时候非常灵活。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。用于调试简单的VB语句非常方便[5]。2.6本章小结本章主要对系统的开发环境和开发技术做了一个简要的介绍。通过对Dreamweaver编程环境的功能介绍来分析选择系统编译的环境;通过对数据库访问技术的介绍选择系统采用的ODBC数据库访问技术;通过对JavaSprict和VBScript的介绍来说明系统采用ASP语言进行开发的优越性。第3章系统概述学习网站是高等学校教学质量与教学改革工程的重要组成部分,是学生自主学习、教学互动、学习交流的重要平台。建设一个美观实用、内容丰富、特色鲜明的学习网站,从社会需求,学科的需求,学校的需求,师生的需求几方面来看,都是有重要意义的。3.1功能需求分析与设计通过查看网上资料、图书馆资料、询问身边同学,总结而得:一个学习网站为了能过达到教学和学习的目标,应该具有以下功能:用户管理子系统功能:对用户权限和用户资料进行管理。资源管理子系统功能:主要实现用户对网站资源的浏览、检索、下载和上传的功能。包括两大类资源,一类是针对学生的学习资源;另一类是针对教师教学和进行网络课程开发的教学信息资源。调查管理子系统功能:通过问卷调查的形式,就学生对该网站的学习效果,网站的设计及学习能力、学习方法和学习习惯的养成等方面的问题进调查,并对调查结果进行统计。在线练习管理子系统功能:包括网络考试和网络练习。这两种模式都是采用随机函数randomize从题库中提取题目的,从而组成试卷。交流讨论子系统功能:向学生和老师提供电子邮件、在线讨论、留言板、公告栏等形式的交流方式。管理员管理子系统功能:对整个系统进行管理。提供学生和老师的添加、删除、修改,个人信息的修改,给老师和学生留言。3.2实体——联系图VFP学习网站的有学生、教师、管理员三种操作用户,下面我将分别从学生、教师、管理员的角度给出他们的E-R图:管理员部分的E-R图,如图3-1所示。图3-1管理员部分的E-R图教师部分的E-R图,如图3-2所示。图3-2教师部分的E-R图学生部分的E-R图,如图3-3所示。图3-3学生部分的E-R图3.3网站的逻辑方案数据流图可以用来抽象地表示系统,它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。由于篇幅的问题下面我只给出了关于考试和作业的数据流图,如图3-4和图3-5所示。图3-4在线考试模块的数据流图图3-5作业管理模块数据流图3.4开发过程分析VFP在线学习系统是一个系统工程,一般建设的流程如下图3-6所示:图3-6VFP在线学习系统一般建设流程图初次确定,确定网站建设方案,收集网站建设及课程的有关资料。再次确定,再次收集网站建设及课程的有关资料,并确定网站的定位与整体风格、网站的架构与栏目。概念开发,根据收集的信息,开始构思,把这些构思跟指导教师讲述,听取教师的建议和意见。内容综合,同意了设计后,就开始制作一些初始图样,这些图样用一般PHOTOSHOP制作和创建,然后,将图样配合文字制作出来。HTML布局和导航,一旦确定了这些内容综合,就开始编制Web页面,导航器要编制到页面中。测试完善,彻底测试每个Web页面,并进行修补和完善。3.5数据库设计该学习网站采用了SQLServer2000作为后台数据库,数据库名为“vfp”,整个网站的实现过程中需要对大量的数据完成搜集、整理、存储、交换等工作。下面给出数据表的概要说明和主要数据表的结构定义及表之间的关系。3.5.1数据表的概要说明网站开发中的数据表可以分为以下类别:用户性息表:可以分为存储学生的信息表,以及存储教师和管理员信息的数据表。在表中分别存储用户的基本信息及其权限。作业信息表:主要是存储教师的发布作业、学生的上交作业和教师批阅作业的情况。交流互动表:包括留言、公告、答疑三类表,是老师、管理员和学生之间进行交流的信息表。调查信息表:包括了调查题目表、调查选项表、调查统计表,管理员和教师的调查表是分别管理的。考试相关表:主要是存储考试的题目,考试的试卷和考试的成绩。考试题目是分类(判断题、单选题、多选题、填空题)存储的。3.5.2主要数据表的结构说明表3-1管理员信息(admin)表字段名类型备注unamenvarchar(10)登录名passwordnvarchar(16)登录密码Admin表存储管理员的信息,以uname作为主键。表3-2学生信息(student)表字段名类型备注snonvarchar(8)学生的学号spasswordnvarchar(16)学生的密码snamenvarchar(10)学生的姓名sclassnvarchar(20)班级systemnvarchar(20)学院semailnvarchar(20)emailStudent表存储学生的信息,以sno作为主键。表3-3教师信息(teacher)表字段名类型备注tidnvarchar(8)教师的编号tnamenvarchar(10)教师的姓名tpwdnvarchar(16)教师的登录密码temailnvarchar(20)emailTeacher表存储教师的信息,以tid作为主键。表3-4公告栏(board)表字段名类型备注idint(4)公告的编号titlenvarchar(20)公告的题目contentnvarchar(100)公告的内容inputdatedatetime(8)公告发布时间Board表存储发布公告的信息,以id作为主键。表3-5填空题(filling)表字段名类型备注fiidint题目编号questionnvarchar(100)题目内容answernvarchar(100)题目答案setupdatadatetime(8)题目的入库时间zhangjienvarchar(20)题目的所属章节nandunvarchar(8)题目难度(难、中、基础)Filling表存储入库的填空题信息,以fiid作为主键。表3-6单选题(selecting)表字段名类型备注selectidint题目编号questionnvarchar(100)试题内容result1nvarchar(20)选项Aresult2nvarchar(20)选项Bresult3nvarchar(20)选项Cresult4nvarchar(20)选项Danswernvarchar(10)题目答案setupdatadatetime(8)题目的入库时间zhangjienvarchar(20)题目的所属章节nandunvarchar(8)题目难度(难、中、基础)Selecting表存储入库的单选题信息,以selectid作为主键。表3-7考试试卷(test)表字段名类型备注exidint(4)试卷编号riidint(8)判断题数目riscoreint(4)判断题每题的分数seidint(8)单选题数目sescoreint(4)单选题每题的分数fiidint(8)判断题数目fiscoreint(4)判断题每题的分数se2idint(8)多选题数目se2scoreint(4)多选题每题的分数ftimeint(4)试卷完成的时间setupdatadatetime(8)试卷发布时间Test表存储教师发布的考试试卷信息,以exid作为主键。表3-8考试(examination)表字段名类型备注examinationidint(4)试卷编号studentnumbernvarchar(8)学生的学号scoreint(8)考试的分数examinationdatadatetime(8)考生参加考试的时间Examination表以examinationid和studentnumber作为联合主键。表3-9上载ppt表字段名类型备注idint(4)Ppt编号namenvarchar(20)Ppt的名称ptimeint(4)Ppt的发布时间ppt表存储教师发布的ppt信息,以id作为主键。表3-10发布作业(homework)表字段名类型备注idint(4)作业编号namenvarchar(20)作业的名称htimeint(4)作业的发布时间mesggernvarchar(50)作业的说明Homework表存储教师发布的作业信息,以id作为主键。表3-11上交作业表(homeworkupload2)字段名类型备注stuidnvarchar(8)学生学号hnamenvarchar(20)作业的名称flagint(4)批改标记(1:已经批阅)scoreint(8)作业的分数uptimedatetime(8)作业批阅的时间Homeworkupload2表存储学生作业上交及上交作业的批阅信息,以stuid和hname作为联合主键。表3-12问题(problem)表字段名类型备注idint(4)问题编号titlenvarchar(20)问题的标题detalnvarchar(100)问题的内容answernvarchar(100)问题的答案uptimedatetime(8)问题提交时间flag_answerint(4)回答标记(1:已经回答)Problem表是学生提问题和老师回答问题用到的表,其中字段id是主键。表3-13留言(teacher_student)表字段名类型备注idint(4)留言编号mesnvarchar(50)留言的内容uptimedatetime(8)留言发布时间flagnvarchar(8)身份类型teacher_student表存储学生留言相关的信息,其中字段id是主键。3.6本章小结本章主要完成了对系统的功能需求分析,详细设计了系统的实体-关系图,用数据流图描绘了系统逻辑方案并对开发过程进行简要的分析和说明。介绍了数据库设计的重要性并对系统的数据库进行了分析与设计。通过分析,系统完成了数据库表的设计;通过系统的需求分析来设计每个表的数据项;通过对数据库概念结构的设计和逻辑结构的设计清晰地展现了系统的数据库总体设计,以及主要的表中每一个字段属性。第4章VFP学习网站的总体设计在设计网站之前,要根据网站建设的目的、网站的功能与网站的访问对象等进行正确的定位,网站的定位决定了网站的整体风格和色彩搭配、网站提供的内容和表现形式、网站的服务对象和预期效果。根据传统的网站分类方法,学习网站属于教育型的资讯类网站,网站的使用者是广大的学生和教师,建站的目的是为学生提供自主学习的平台,为教师提供教学互动的平台。基于以上几点的考虑,我对整个网站的总体设计如下。4.1网站基于B/S体系整个系统采用Browser/Web/DataBase的3层体系结构。Browser/Server的系统中,用户可以通过浏览器向分布在网络上的服务器发出请求,服务器对浏览器的请求进行处理,将用户所需的信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置Web浏览器即可。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由WebServer完成[7]。Browser/Server三层体系结构,如下图4-1所示。客户机Web服Web应务器IIS用程序数据库客户机Web服Web应务器IIS用程序数据库B/S结构的优点:维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性[8]。成本降低,选择更多。windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,且安全性高。而Linux不仅操作系统是免费的,而且数据库也是免费的[8]。4.2网站功能模块结构的设计VFP学习网站管理系统共包括六个子系统,用户管理子系统、资源管理子系统、调查管理子系统、在线练习管理子系统、交流讨论子系统和管理员子系统。这六个子系统包括的主要功能模块如图4-2所示。VFP学习网站VFP学习网站教师管理模块学生管理模块作业管理模块调查管理模块考试管理模块个人信息管理模块公告栏模块留言板模块教学资料管理模块登录模块答疑教室模块讨论区模块数据库图4-2系统主要功能模块图教师管理模块:主要实现的功能为:教师的添加、教师信息的修改,教师信息的删除、教师信息的查询,该功能是管理员实现的。学生管理模块:主要实现的功能为:学生的添加、学生信息的修改,学生信息的删除、学生信息的查询,该功能是管理员实现的。教学资料管理模块:分为学生端和老师端进行设计。考试管理模块:分为学生端和老师端进行设计。作业管理模块:分为学生端和老师端进行设计。公告栏模块:分成学生端和老师端进行设计。留言板模块:分成学生端、老师端和管理员进行设计。答疑教室模块:为教师和学生提供“问答”环境,教师可以针对每位学生的问题做出回答。讨论区模块:功能类似于聊天室,该模块中所有用户都是平等的,学生、教师和管理员可以同时登录,进行实时的交流。个人信息管理模块:是为学生、教师和管理员提供了查看个人信息和修改个人信息的功能。调查管理模块:通过问卷调查的形式,就学生对该网站的学习效果,网站的设计及学习能力、学习方法和学习习惯的养成等方面的问题进调查,并对调查结果进行统计。4.3本章小结本章对系统进行了总体分析与设计,简要描绘本系统的主要功能模块并对每个模块所实现的具体功能进行初步的说明。第5章系统详细设计与实现在第4章已经总体规划了该系统的模块及其功能,本章将详细的介绍各个模块的设计与实现过程,以及相应的运行页面。5.1关键知识点介绍5.1.1模板模版可以被理解成一种模型。在制作网站的过程中,为了统一风格,很多页面会用到相同的布局、图片和文字元素。为了避免大量的重复劳动,可以使用Dreamweaver中提供的模板功能,将具有相同版面结构的页面制作为模板,将相同的元素(如导航栏)制作为库项目,并存放在库中可以随时调用。在开发本系统的过程中,用了toc.dwt(学生模板)、teacher.dwt(教师界面)、study_net.dwt(学习界面模板)、admin.dwt(管理模板)、test.dwt(考试管理模板)5个模板,大大的减少了我的工作量。5.1.2openScript函数openScript函数是自己定义的,主要是实现一进入首页立刻会弹出一个窗口,或者按一个连接或按钮弹出。下面是这个函数的定义:<SCRIPTlanguage=javascript>functionopenScript(url,width,height){varWin=window.open(url,"openScript",'width='+width+',height='+height+',resizable=0,scrollbars=yes,menubar=no,status=no');}</SCRIPT>5.1.3Lyfupload文件上载组件Lyfupload组件支持单、多文件上载;可以将上载的文件名改名保存;可以同时使用其他的表单元素信息;支持限制文件大小的上载;支持限制文件类型的上载;可以得到上载文件的大小;支持将文件内容,如上载图形文件等各类windows文件保存到数据库中;支持从数据库中读取上载文件;还可以得到上载文件的MIME类型。在使用Lyfupload时要注意的是:form表单的enctype属性要设置为"multipart/form-data"。组件的方法介绍:Request方法:得到上一个页面中表单元素的值;返回值:为元素的值,字符串类型。FileType方法:得到上传文件的Content-Type;返回值:文件上传成功,返回文件的Content-Type;不成功,返回为""。SaveFile方法:上传客户端选择的文件;声明:SaveFile(strTagAsString,strPathAsString,strwayasboolean),参数介绍:strTag为Form中文件元素的名字,如"File1":strPath为文件保存在本机的目录;strway为上传文件方式,覆盖方式上传为true,不覆盖上传为false;DestFileName(可选参数),代表文件上传后重命名保存的名字;组件属性介绍:ExtName属性:限制上载文件的类型;MaxSize属性:限制上载文件的大小;FileSize属性:得到上载文件的大小;DBContent属性:得到上载文件的实际内容,为二进制流;5.1.4页面导航条当光标移动到链接时,就会在其下面出现其它的链接。实现该功能主要是运用onmouseover事件。主要代码如下:functionshowdiv(div_id)//显示的函数{if(document.all.item(div_id).style.display=="block"){document.all.item(div_id).style.display="none";}else为下面分区号光标移到时事件{document.all.item(div_id).style.display="block";}为下面分区号光标移到时事件} <tdalign="center"onMouseOver="javascript:ShowSubMenu(6)">问题管理</td><!—光标移到“问题管理”时显示的分区—><divclass="SubMenu"id="SubMenu6"style="DISPLAY:none"name="SubMenu6"><tablecellSpacing=0cellPadding=0width="100%"border=0><tr><tdwidth="285"height="25"> </td><td> <ahref="question_answer.asp">问题管理</a>|<ahref="chat_teacher.asp">在线交流</a></td></tr></table></div>5.1.5分页显示在显示信息的时候,往往是信息很多,在一页显示就会使得页面很长,这样对于用户来说是不方便的。分页显示就可以规定每页的最多显示信息数,不仅方便了用户还可以美观页面。下面是分页显示的实现:创建一个Recordset对象rs,然后设置rs的属性recordcount的值和属性absolutepage的值(即每页显示的最多信息数rs.recordset=每页显示的信息最多数和当前显示的页码rs.absolutepage=要显示页码)。在显示信息的时候只要引用“whilenotrs.eofandi<rs.recordcount”就可以实现分页显示了。5.1.6数据库中的数据表字段导入到EXCEL表该功能的实现是可以方便教师和管理员的信息查看,关于数据库中的数据表字段导入到EXCEL表的代码实现比较长,在后面模块的详细设计中会介绍的。5.2注册和登录模块新用户注册 新用户注册。对于新用户第一次使用该学习网站,必须要先注册,如图5-1所示;注册成功后将保存注册的信息,如图5-2所示。图5-1注册页面图5-2登录界面已注册用户登录已注册的用户在每次访问本网站时应首先要通过登录页面登录。本网站的登录使用了用户名、密码和身份类型来判断用户的登录页面,否则显示登录失败。因此,将除登录、注册页面以外的页面设为限制访问的页面。用户登录成功后的用户名赋与变量usemame,由语句Session("usemame")=usemame实现对页面的限制访问,该模块的工作流程图如图5-3所示。登录界面登录界面打开学生页面打开教师页面打开管理员页面登录失败YNNYYYN用户名密码正确是否学生身份是否教师身份是否管理员身份开始图5-3登录流程图5.3教师管理模块教师管理模块主要实现的功能为:教师的添加、教师信息的修改,教师信息的删除、教师信息的查询,该功能是管理员实现的。教师的信息包括编号、密码、姓名,管理员可以通过编号来查询教师的信息,而且管理员还可以将数据库中的教师信息表根据自己的要求选择字段保存到Excel表格中。教师是不可以自己注册登录的,只有管理员的添加才能使用该网站。管理员还可以给老师留言,这种留言是采用1对1的模式。教师管理模块的页面如图5-4所示。图5-4教师管理模块页面5.3.1添加教师信息功能实现管理员在管理界面单击“添加教师”按钮,则进入教师信息添加页面,如图5-5所示。在该页面上添加教师的基本信息,按“添加”按钮后则将教师信息添加到系统中。图5-5添加教师信息页面图5-6修改教师信息页面在添加教师的信息之前,需要判断该教师信息是否已经全部填写以及填写的信息是否在数据库中已经存在,如果教师信息审核不通过,则不能添加;否则采用rs.addnew和rs.update相关语句实现教师信息的添加。并自动的跳转到教师管理模块页面,实现的代码为:response.Redirect("teacher.asp")。5.3.2修改教师信息功能实现管理员在教师管理模块页面单击“修改”链接,则进入教师信息的修改页面,如图5-6所示。在该页面显示了目前要修改教师的信息,管理员可以重新设置教师的信息。在修改教师的信息之前,需要判断该教师信息是否已经全部填写以及填写的信息是否在数据库中已经存在,如果教师信息审核不通过,则不能修改;否则用rs.update相关语句将修改后的信息更新到数据库中。5.3.3删除教师信息功能实现管理员在教师管理模块页面选择某个教师后,单击“删除”链接,则用rs.delete相关语句完成删除操作。5.3.4查询教师信息功能实现管理员在教师管理模块页面的搜索功能区输入教师的编号,如果存在则显示该教师的信息,否则输出“暂时没有相关的记录!”5.3.5教师信息转换EXCEL表保存功能管理员在教师管理模块页面的另存为Excel文件功能区,单击“另存为Excel文件”链接,则跳转到页面如图5-7所示,管理员再根据自己的需求选择字段,然后单击“下一步”按钮,就可以把数据库中的教师信息表中的选中字段的信息保存到teacher.csv文件,这个文件的文件名是根据数据库中的教师信息表的表名得来的。图5-7选择字段图5.3.6管理员对教师留言功能实现管理员在教师管理模块页面点击教师的姓名,则出现留言页面。管理员可以在留言页面的文本域中填写要留言的内容,内容填写完成后,按“提交”按钮就可以了。该操作是显示该页面的大小,设定为:width为400,height为300。其实现的代码如下:<ahref="javascript:openScript('give_teacher_message.asp?id=<%=rs("tid")%>',400,300)"><%=rs("tname")%></a>//其中give_teacher_message.asp就是对老师留言的页面。5.4学生管理模块学生管理模块的功能和教师管理模块的功能相同,实现方法也类似,只是在处理数据的时候面向数据库中数据表不同而已,所以在这我对学生管理模块的功能的实现就不加以介绍了。5.5教学资料管理模块教学资料管理模块分为学生端和老师端进行设计。下面先介绍教师端功能的实现,再介绍学生端功能的实现。5.5.1教学资料管理模块教师端功能实现在该模块教师可以发布html格式的网页教案,可以根据自己的教学进度来发布PPT教案,当然老师也可以对这些资料进行删除、修改和查询。老师发布的资料是学生学习的主要资源,这些资料是按照章节来分类的,学生可以根据自己的需求学习不同进度的教学资料,这样就可以方便学生的学习。PPT教案的发布功能在教师工作页面的导航条(如图5-8所示)点击“上载ppt”链接则进入教师上载ppt功能页面(如图5-9所示),教师要选择ppt的名称,浏图5-8教师工作页面的导航条览ppt文件,再按“上传”按钮,如果教师填写的内容不为空,而且要上载的ppt以前还没有上载过,则可以上载成功;否则上载失败。在这里只能上载的是ppt类型的文件,文件上载成功以后是存放在服务器的ppt文件中的。图5-9上载ppt功能页面上载ppt文件的功能实现是用了文件上载组件Lyfupload,实现的部分代码如下:<%setpost=server.CreateObject("lyfupload.uploadfile")post.extname="ppt";//限制文件的类型为pptchangename=post.request("pname")&".ppt"//获得文件名filepath=server.MapPath("../ppt")//文件存放的路径ss=post.savefile("ppt",filepath,false,changename) ifss=""thenresponse.Write("<scriptlanguage=javascript>alert('文件上传失败!');history.back(-1);</script>")elseifss="1"thenresponse.Write("<scriptlanguage=javascript>alert('不是ppt文件!');history.back(-1);</script>")elseifss="3" thenresponse.Write("<scriptlanguage=javascript>alert('文件已经存在!');history.back(-1);</script>")else……//把ppt上载的信息保存到数据库的ppt表中。%>ppt教案的删除功能教师在ppt上载页面可以浏览已经上载的ppt文件(如图5-10所示),在该页面可以看到有个删除操作,当你选中“第6章.ppt”的“删除”链接,就会把该ppt文件删除。图5-10ppt上载浏览页面5.5.2教学资料管理模块学生端功能实现在该模块学生可以查看网页教案,下载教学资料(如:教师的PPT、实验指导资料)。网页教案老师直接做成html格式,学生可以在线浏览该教案进行学习;ppt教案老师是以ppt文件的格式上载到ppt文件,供学生自己下载浏览的。网页教案的在线学习的导航区如图:5-11所示,学生想要学习某章节的时候,只要点击该章节的课题就可以连接到该章节的htm教案进新学习。该导航区是分级图5-11在线学习的导航区展开的菜单,下面将对此菜单的实现做一些介绍。如图5.5.2—1所示,当单击标题“visualfoxpro基础”的时候,下面子菜单每一小节的标题就显示出来了;再次单击,下面的子菜单又收缩不显示了。下面的函数是用来实现显示和收缩功能的。<scriptlanguage="javascript">functionshowdiv(div_id){//如果原来的子标题部分的属性是显示的,那么就将属性改为不显示 if(document.all.item("div"+div_id).style.display=="block") {document.all.item("div"+div_id).style.display="none"; }//如果原来的子标题部分的属性是不显示的,那么就将属性改为显示 else {document.all.item("div"+div_id).style.display="block"; }}</script>对于子菜单的html部分,我定义了一个块<divid=""style="display:none">根据风格定义display:none,块中的内容缺省是不显示的。当单击标题的时候,调用了函数showdiv(div_id),这样就可以通过子标题部分的display属性来改变页面的显示了。如下所示:<ahref="#"language="javascript"onClick="showdiv('2');">VisualFoxPro系统初步</a>5.5.3PPT教案的下载学习功能PPT教案下载学习页面只为学生提供了ppt浏览和下载功能(如图5-12所示),在页面可以显示教师已经发布的ppt列表,在ppt显示的时候是按照教师的发布时间来排列的,教师发布的时间越近则显示的时候就越靠前显示,这样也可以方便学生的下载。学生在下载ppt的时候,只要单击要下载的ppt名称就可以了,例如:下载“第5章.ppt”,点击后,再根据学生自己的需求做“打开”、“保存”、“取消”功能的选择。图5-12ppt浏览页面关于ppt浏览页面的代码实现很简单,就是从数据库的ppt表中读取数据及可以了。下面我只是简单的介绍ppt下载实现代码:<ahref="ppt/<%=rs("name")%>"><fontcolor="#FF0000">ppt名称</font></a>//其中ppt/<%=rs("name")%>是下载文件的路径。5.6考试管理模块考试管理模块分为老师端和学生端进行设计,下面我将分别介绍教师端和学生端的实现。5.6.1考试管理模块教师端实现教师端主要是对试题(判断题、单选题、多选题和填空题)进行添加、修改、删除和查询;对学生的考试成绩可以通过学号来查找,而且教师还可以将数据库中的考试成绩信息表根据自己的要求选择字段保存到Excel表格中;对试卷进行添加,修改和设置,试卷的属性包括每种试题的题数、每种试题的分数和每张试卷的考试时间。试题管理模块的实现当教师正确登录后,进入考试管理页面,在该页面,教师可以对试题、试卷、成绩进行管理(如图5-13教师考试管理的功能区)。在试题管理中可以图5-13教师考试管理的功能区对判断题、单选题、多选题、填空题进行管理。下面首先介绍判断题管理模块的设计和实现。判断题管理的实现判断题管理可以添加、修改及删除题目。在判断题管理页面可以完成题目的查询功能,并提供了添加、编辑及删除题目的链接,页面如图5-14所示。图5-14判断题管理页面判断题的显示判断题管理页面首先将“rightorwrong”数据表中的数据全部提取出来,并且按照每页10条记录的方式显示。在本页面中将题号、题目、答案、章节和难度分别显示出来,并在每一条记录的后面均提供了“编辑”和“删除”链接。判断题的查询判断题管理页面提供了“查找”功能(如图5-15所示),该功能的能够实现查询条件在题目内容中的模糊查找。该查找方法是将题目中有包含查找关图5-15查找功能区字的题目全部查询出来,并按照分页显示。下面给出查找实现的主要代码:<%keyword=trim(request(“keyword”))ifkeyword=”所有题目”elsekeywords=keyword%><%str="select*fromrightorworngwherequestionlike‘%”keyword”%’orderbyriid"rs.openstr,conn,3,1,1rs.pagesize=10%>上述代码中的keywords变量是用来在页面中显示用户输入的查询条件或者条件为空时显示“所有题目”的。查询采用的是按“%”方式的“question”字段的模糊匹配。判断题的添加在判断题管理页面中“添加新题”的链接,单击“添加新题”就会跳转到判断题添加页面,如图5-16所示。在添加判断题时,每次可以添加小于等10道试题。试题添加时,要求试题的编号必须连续,因为考试的试卷是随机组卷的,而我用的随机组卷方法就是在一定范围内随机产生题号并抽取试题。添加的图5-16判断题添加页面试题要求填写好题目、答案、章节和难度,单击“提交”按钮进行审核,只有这些属性的值不为空才能添加到判断题的题库中。添加题目在题库中编号分布实现语句如:<%rs(“riid”)=rs.recordcount+1%>。判断题的删除与添加功能类似,为了保证试题编号的连续性,在删除试题的同时需要修改其他试题的编号。删除某个试题,只需要单击试题右侧的“删除”链接,即可完成试题的删除功能。代码的实现注意点:删除试题时,如果所删除的试题不是试题表中最后一条记录,则要对试题的编号重新排布,这样就保证了试题编号的连续性。显示的主要代码如下:<%i=1 whilenotrs.eof rs("riid")=i rs.update i=i+1 rs.movenext wend%>判断题的修改判断题的修改只需要在判断题管理页面上选定试题后,单击“编辑”链接转入试题编辑页面。试题的修改页面比较简单,关键点是答案、章节和难度在下拉列表中的实现。例如单击编号为11试题的“编辑”链接,则出现如图5-17所示的修改页面。在该页面的“答案”、“章节”和“难度”下拉列表中,根据试图5-17判断题修改页面题表中的数据来显示答案、章节、难度。教师可以重新设置该题目的题目内容、答案、章节和难度,修改完成后单击“提交”按钮,则可以判断题的修改。下面给出了试题答案再现的关键代码:<selectname="answer"> <optionvalue="对"<%ifrs("answer")="对"thenresponse.Write("selected")endif%>>对</option><optionvalue="错"<%ifrs("answer")="错"thenresponse.Write("selected")endif%>>错</option></select>单选题、多选题和填空题管理的实现单选题、多选题和填空题管理与判断题管理相类似,实现方法和代码也是类似的,这里就不再详细介绍了。试卷管理的实现试卷管理主要是完成试卷各项参数的设置,例如:总分、考试时间、题型和分值。在教师单击“试卷管理”链接,如果当前还没有考卷,则进入试卷添加页面,如图5-18所示;如果已经有编写好的试卷,则进入如图5-19所示的页面,选择某一试卷编号,进入试卷管理页面,如图5-20所示。图5-18添加试卷页面图5-19修改试卷页面图5-20试卷管理页面试卷添加页面能够实现试卷各题型的题目数量、每题的分值,以及考试时间的设置。如果在本章试卷中题型某种不出现,则题目数量和分值分别设置为0即可。设置完成各项参数后,单击“增加”按钮进入判断各输入框中的数据的合法性,然后取得试卷表中的最大编号,则新加入的试卷编号为最大编号加1;如果试卷表中还没有试卷则试卷的编号为1。接下来将本张试卷的内容写入到数据表中,并调回到试卷管理页面。试卷修改页面的文本框开始是设置为“只读”,只用选中了修改复选框才能对试卷的参数进行修改。主要代码的实现如下:<scriptlanguage="VBScript">suba1_onclick‘a1是复选框的name//这个函数是单击复选框事发生的事件document.form1.num1.readonly="false"document.form1.s1.readonly="false"document.form1.num1.focus()//聚光endsub</script>成绩管理模块的实现教师在考试管理页面单击“成绩管理”链接,进入成绩管理模块页面,如图5-21。该页面可以浏览参加考试学生的考试成绩以及查询某一学生的成绩。教师可以通过学号、试卷号进行查询学生的成绩,在用试卷号进行查找时选图5-21成绩管理页面择菜单中的选项是从数据库中读取的,如果有记录则显示学生的记录,否则显示“暂时没有相关的记录!”。在该页面教师还可以将学生的考试成绩保存为excel文件实现选择菜单的选项从数据库中读取的主要代码如下:<option>--请选择试卷号--</option><%whilenotrs.eof%><optionvalue="<%=trim(rs("exid"))%>"><%=rs("exid")%></option><%rs.movenext wend%>5.6.2考试管理模块学生端实现考试管理模块学生主要能够实现随机组卷、在线判卷,以及成绩入库等功能。进入开始前准备功能的实现学生登录后,单击“网络考试”链接,跳入试卷选择页面,如图5-22所示。学生在考试之前可以先查看考试信息,单击就可以浏览考图5-22考试试卷选择页面试相关的须知。单击就可以查看以前考试的成绩,如果该学生已经存在考试记录则显示考试的记录,否则显示“暂时没有相关的记录!”。学生根据考试要求选择试卷编号,单击“开始考试”链接,如果该学生以前没有参加过这期的考试,那么就可以成功的进入考试;否则会跳出“这期考试你已经考过,请选择其它期考试。”试卷抽取功能的实现试题抽取、随机组卷是该模块的关键点。组卷时需要根据试卷的设置分别从判断题、单选题、多选题和填空题表中抽取规定数目的题目,并显示在学生端浏览器上,组成一张试卷。图5-23考试试卷页面试题抽取时需要按照规定的题量,产生随机数,将该随机数作为试题编号从试题表中抽取出来并写入到学生端页面。试卷页面的设计如图5-23所示。在该页面中左上角有个剩余时间的显示,该方框可以随着页面的上下移动而保持在页面的相同位置,即所谓的漂移技术。该功能的实现主要是采用了<div>,设置<div>的位置为absolute,再设定它分区的宽、高的属性即可。随机抽取试题,组成试卷的主要代码如下:dima()redima(rs("riid")-1)//动态分配数组大小i=1t=0randomizeriid=int(total1*rnd+1)//产生随机数a(t)=riidwhilei<rs("riid")//随机数不能重复randomizeriid=int(total1*rnd+1)forj=0totifriid=a(j)thenwhileriid=a(j) randomizeriid=int(total1*rnd+1)wend上述代码中产生随机数放在a()数组中,这些数就作为从题库中抽取题目的编号。在线阅卷功能的实现在线考试的优势之一就是能够实时阅卷和记录考试成绩,减轻教师的负担。实时阅卷的实现方法是:在抽取试卷的同时将答案一并写入试题页面,只不过答案采用隐藏文本框的方式写入。那么在判卷时只需要将考生的答案和隐藏答案匹配一下,如果相同则正确加分,否则错误。在浏览答案页面点击“返回”按钮,就可以保存考试成绩,并且跳转到考试试卷选择页面。5.7作业管理模块学习网站要模拟一个真实的教学过程,作业管理模块不可缺。在这个模块中教师要发布作业、学生下载作业、教师要批改作业,以及给出分数等。5.7.1发布作业功能实现教师登录后,单击“作业发布”链接则进入发布作业页面,如图5-24所示,在该页面教师可以浏览自己已经发布的作业信息。教师只要填写好作业的名称、作业内容、作业说明,按“上传”按钮进入上载作业的信息审核阶段,要是信息审核通过就成功的上载了作业,否则会跳出不同的对话框加以说明上载失败的原因。作业上载要求是“rar”文件,上载的目录是“homework”文件。作业上载成功后,作业压缩包存放在homework文件中,而作业的相关信息则存放在数据库的homework表中。上载作业用的是Lyfupload组件,其相关的实现代码在这就不加以显示了,因为前面有介绍过。图5-24发布作业页面5.7.2删除作业功能实现在发布作业页面中的已发布作业显示模块中,拥有“删除”功能,教师想要删除某次作业只要点击该作业后面的“删除”链接,就会从数据库的homework表中删除相关的记录,并对数据库中的作业编号进行重新的编排。5.7.3下载作业功能实现下载功能的页面如图5-25所示,在该页面学生可以浏览教师已经发布作业的相关性息,学生点击作业名称可以从homework文件中下载该作业的压缩文件。该页面的实现和教学资料管理的ppt下载页面实现相类似,不详细介绍了。图5-25作业下载页面5.7.4上交作业功能实现学生做完作业后,要上交作业等待教师的批阅,学生上交作业的功能的实现和教师上载ppt类似,用到了Lyfupload文件上载组件。对于已经上载的作业,要是教师还没有批改,那么学生就可以把该记录删除重新上载作业。5.7.5批阅作业功能实现教师可以对学生已经上交的作业下载批阅,并给出分数,实现该功能的页面是教师作业批改页面,如图5-26所示。在教师批改作业的页面,教师可以浏览已经上交作业的信息(学号、作业名、上载时间、分数),教师没有批改的作业的分数属性显示“未批改”,否则显示作业的分数。在作业批改页面,还给教师提供了按“学号”和按“作业名”查找作业上交情况的查询功能,这样就方便了教师的查找。要是在作业批改页面点击属性,那么就可以跳转到教师批改作业的页面,例如点击“062101111的第一章第一节作业”的,就会跳转到如图5-27所示的判分页面。在该页面可以显示学生的具体信息(学号、姓名、班级和学院),提供作业文件的下载及对作业的打分操作。教师在重新打分文本框中填写要给的分数,按“提交”按钮就完成了打分操作,这时候页面会跳转到教师批改作业页面显示批改后的信息。图5-26教师批改作业的页面图5-27判分页面在文本框中输入学号,要是该学号有上交作业的记录就会显示查找到的记录。在选项框中选择作业名进行查找。5.8留言板模块留言板模块分成学生端、老师端和管理员进行设计。它是采用1对1的模式,学生、老师和管理员发布的留言只有发布者选择的对象才可以看到,留言板的显示是按发布的时间罗列出的。下面我分别从学生、教师和管理员端进行介绍。5.8.1留言板学生端的实现学生端主要实现功能为:学生可以查看教师或管理员发布的留言,也可以对教师或管理员留言。学生浏览和查看留言功能的实现学生单击“个人留言”链接,则进入如下图5-28所示的页面。该页面是学生“个人留言”的首页面,学生在该页面可以方便的浏览老师和管理员对自己的留言。显示的留言信息有序号、留言内容、留言时间和留言者,留言记录的显示是按留言时间的排列的,越新的留言排列在越前面。在留言内容显示的时候,我通过<%=left(rs("mes"),10)%>语句来设定只有留言的前10个字符是可以显示的。当学生想看留言的具体内容时,只要单击具体的留言内容就会显示留言的所有信息,例如,某学生想查看序号为“1”的留言,那么只要单击链接就可以查看该留言的具体内容。“留言者”属性的信息是从数据库message表中flag字段读取的,当留言者提交留言时,会保存身份到数据库的message表中。图5-28留言页面图5-29个人留言页面学生留言功能的实现学生在个人留言的首页面单击链接,就会显示如图图5-29所示的留言页面,该页面也是调用了openScript函数显示的,实现代码如下:<ahref=javascript:openScript('give_message.asp?id=<%=num%>',400,300)[我要留言]</a>。学生选择留言对象(老师或管理员),填写留言内容,按“提交”按钮进入信息审核阶段,如果填写的留言内容不为空那么留言成功,留言就可以保存到message表中;否则留言失败。5.8.2留言板教师端的实现教师端主要实现功能为:教师可以查看学生或管理员发布的留言,根据需求可以对学生或管理员留言,对于已经发布的留言还可以进行回复。教师浏览、查看、回复留言功能的实现教师在导航条单击“老师留言”链接,进入图5-30所示的留言显示页面。该页面的功能和学生个人留言页面功能相类似,它们相同的功能就不再重复介绍。图5-30教师留言显示教师对学生留言功能的实现教师在导航条单击“学生信息”链接,则进入链接页面,如图5-31所示。在该面显示了学生的相关信息(学号、姓名、班级和邮箱),教师可以单击学生姓名对学生留言。图5-31学生信息页面5.8.3留言板管理员端的实现管理员端主要实现功能为:管理员可以查看学生或教师发布的留言,根据需要可以对学生或教师留言。管理员端设计的功能和实现方法与教师端相类似,主要的区别就是引用asp语言处理的数据库中的表不同,所示对于管理员端的实现我就不做详细介绍了。5.9公告栏模块公告栏模块分成学生端和老师端进行设计。公告栏是采用多对多的模式,它的实现和留言板模块类似,这里也不再具体介绍了。5.10答疑教室模块答疑教室模块为教师和学生提供“问答”环境,教师可以针对每位学生的问题作出回答,及时掌握学生的学习状况,下面分别从学生和老师的角度进行设计。5.10.1答疑教室学生端的实现学生端主要实现功能为:可以查看所有同学提的问题,也可以查看老师对问题的回答情况,已经回答的问题学生就可以查看问题的答案。学生端的实现和留言板学生端的实现类似,不再介绍了。5.10.2答疑教室教师端的实现教师端主要实现功能为:教师可以查看学生的提问,对于还没有回答的问题教师可以对问题进行回答、对于已经回答的问题教师可以查看答案并进行修改,教师还可以对问题进行删除,可以删除的问题只有那些已经回答过的问题。问题的显示是按提问的时间罗列出的,最近时间就显示在最前面,该功能的实现和学生端类似,就不再介绍了,下面我将介绍教师删除功能的实现。其实实现界面如图5-32所示。图5-32教师答疑主界面教师选中要删除的记录,按“删除”按钮就可以成功的删除选中的记录了,实现的主要代码如下:<inputname="id"type="checkbox"value="<%=rs("id")%>">//标记复选框<% total=request.Form("id").count//删除的记录总数 str="deletefromproblemwhereid="fori=1tototal conn.executestr&request.Form("id")(i)//删除记录 next sql="select*fromproblem" rs.opensql,conn,3,3 no=1 whilenotrs.eof rs("id")=no//删除记录后对记录重新编号 rs.update no=no+1 rs.movenext wend%> 5.11讨论区模块讨论区模块功能类似于聊天室,该模块中所有用户都是平等的,学生、教师和管理员可以同时登录,进行实时的交流。用户点击导航条“在线交流”链接,可以进入交流登录页面。用户输入用户名,单击“登录”按钮就可以进入在线交流页面(如图5-33所示),登入用户的用户名保存在session(“user”)中,并不能对后台数据库的进行操作。图5-33在线交流页面讨论区用到了框架,把页面分成了上下两帧,其中上边一帧显示当前聊天的记录,下边一帧为接收用户输入信息的内容发送区。用户提交谈话内容的时候,上面一帧的聊天信息将会更新。用户不提交内容的时候,上面一帧就采用“定时刷新”方法使聊天的信息刷新。实现代码如下:在<head>与</head>标记之间加入<meat>标记:<metahttp-equiv="refresh"content="25;url='1.asp#tail'">它的作用是让这一个页面定时的刷新,每隔25秒刷新一次,后面的URL指明了刷新的页面名称为1.asp,#tail是页面中的一个</a>标记,在文件的末尾,每次页面显示的时候,缺省显示到网页末尾。在服务器上建立了一个文本文件1.txt用户提交的聊天信息都将记录在文本1.txt中,浏览器中的1.asp页面将定期刷新,将1.txt中的聊天信息显示给用户。下面给出了讨论区的主要代码:<%filepath=server.MapPath("1.txt")//打开文本文件setfileobject=server.CreateObject("scripting.filesystemobject")//下面是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度安徽省新能源汽车充电设施运营合同
- 2024年度核电站劳务施工合同纠纷案例
- 2024年度房屋租赁合同:包含租金、租期、维修等详细条款的甲乙双方协议2篇
- 2024年度版权许可使用合同详细条款与标的说明3篇
- 2024年度5G基站建设总承包合同2篇
- 2024年度租赁合同:甲乙双方关于租赁会议室的协议
- 2024年度物流服务合同标的保密与违约处理
- 《化学元素与人体健康》分层作业(解析版)
- 2024年度技术升级与代加工生产协议2篇
- 二零二四年度工厂车间生产外包合同
- 2024股权质押合同(工商局范本)
- 2024年新北师大版七年级上册数学课件 6.1 丰富的数据世界
- 2024年新北师大版七年级上册数学教学课件 4.3 多边形和圆的初步认识
- 2024年全国职业院校技能大赛高职组(化学实验技术赛项)考试题库-上(单选题)
- 大型集团公司IT信息化顶层规划报告
- 第18课《我的白鸽》教学设计 2024-2025学年统编版语文七年级上册
- 关于物质的量的计算教案 人教版
- 矿产资源法与矿业权考核试卷
- 字体设计(天津美术学院)智慧树知到答案2024年天津美术学院
- 小学高年级课外名著阅读导读《流浪地球》课件
- 全新借款转投资款的协议2024年
评论
0/150
提交评论