1、学生还可以在网上反复学习以巩固课堂上学到的知识。或是将课件下载下来进行自主学习。这样教学资源的利用率会大大提高。此次的网站是针对单门课程进行设计的网络教学平台(前台)的设计。在此基础上还可以扩充成多门课程的教学平台。然后由后台的服务进行更新。网站的主要目的就是实现教学资源的共享,满足教学的需求,提高教学资源的利用率。学生可以通过系统发布问题,可以搜索相关的问题。可以查看其它学生的问题,教师回答问题,通过这种方式实现师生之间的互动交流。此外,教师也可以动态发布实验的内容和要求。1.2主要开发工具介绍1.2.1 梦幻网页的编织者DreamweaverDreamweaver是创建和管理网页的专业化可
2、视编辑器。使用Dreamweaver可以轻松创建跨平台、跨浏览器的页面。Macromedia的Roundtrip HTML技术允许用户随意导入HTML文档而无需重新设置代码格式。Dreamweaver相对于其他同类软件来说有这样几个特点:不生产冗余代码;具有方便的代码编辑,可以自由在可视化编辑和源代码编辑状态之间自由转换;强大的动态页面支持;操作方便,它提供了历史面板、html样式、模板等功能避免了重复劳动,除此之外,它还可以直接在页面中插入flash等插件。使用十分方便。Dreamweaver可以为用户做到:使用动态HTML功能(例如具有动态效果的层和行为)而不用写一行代码。它甚至还可以检查
3、用户的工作成果在所有流行的平台和浏览器中可能发生的错误。Dreamweaver还是一个可以完全自定义的应用程序。用户可以创建自己的对象和命令修改菜单和快捷键,甚至编写JavaScript代码扩展Dreamweaver的行为和属性检查器。1.2.2 动态网站的脚本语言ASPActive Server Pages:“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE 或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中
4、“浏览”。ASP的语言相容性高,与所有的ActiveX Script语言都相容。并且它的隐密安全性也相当高。如果在浏览器中直接查看网页的源文件,那么只能看见html文件。而ASP程序代码是看不到的。能够避免ASP程序被看见和盗用。再有,使用ASP抑郁操控数据库,它可以通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如Access、SQL Server、Oracle等等。因此选择采用ASP结合 dreamweaver8构架网站。并使用IIS5.0对页面进行调试。1.2.3 数据库AccessMicrosoft Access是一种桌面数据库,只适
5、合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。Microsoft Access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器IIS假死,或者消耗掉服务器的内存导致服务器崩溃。对于需求不算太大的数据库来说,使用Access比较合适,如果网站还需要继续扩充,则可以将数据库的开发工具改为SQL server。数据库的访问方式有很多种,主要有公共网关接口GGI(Common Gateway Interface),先进数据库连接器ADC(Advance Database Connector),JAVA/JDBC语言编程,动态
6、服务器页面ASP。相对应以上几种数据库访问方式,ASP编程灵活简洁,具有较高的性能,是目前访问WEB数据库的最佳选择。1.2.4 SQL查询语言SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的 SQL接
7、口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。1.2.5 其他网页制作还用到了一些其他的软件,比如说处理图片的Photoshop软件,本次设计的网页导航图片就是通过Photoshop剪切拼合成的。还有另一个制作平面二维动画的flash软件,在学生作品展示中,由于资源有限,就在末尾放上了一个自己做过的flash
8、动画。还有一个比较重要的工具就是测试网页用到的windows组件IIS。HTM等格式的静态网页可以通过网页浏览器直接进行测试,ASP动态网页的测试则最好是通过IIS,在电脑安装系统的时候系统自带了一个服务器测试软件。安装方法如下:打开控制面板,选择添加或删除程序,再选择添加或删除windows组件,钩选中Internet信息服务(IIS)点击下一步,按照向导安装上IIS。安装成功后,将整个网站放在合适的目录下即可对动态网页进行测试。2需求分析建立网络平台的主要目的是为了方便教学工作,其最本质的功能在辅助教学方面。2.1系统功能需求分析本次设计的是前台,主要实现的是面向学生的这部分功能。主要功能
9、及简介如下:(1)注册及登录。学生可以通过注册来获得用户名,获得登录的权力,这有助于在辅导答疑中实现问题的查看(2)上传功能。学生可以将老师布置的部分作业通过网站提交上传。(3)下载功能。现在教师上课一般都有课件,通过后台管理可以将每一章节的内容放到网站上,学生想要再看课件的话可以通过进入网站下载。(4)留言功能。学生可以通过答疑平台将自己的问题提交到网站上,然后由老师回答,学生再次登录的时候可以查看自己的问题是否被回答了。(5)查看功能。整个网络教学平台是要实现教学目的,所以很多教学内容都要放到网页上供学生查看。2.2系统的数据需求分析数据是系统的灵魂,没有数据的话也就无从谈起管理,系统也就
10、不能发挥它的功效。所以说数据库的选择对系统的开发很重要。虽然本次设计采用的是适用于小型数据存储的Access数据库开发,但SQL查询语句仍然适用。SQL查询语句可以实现一系列复杂的操作。比如说数据的增加、删除、修改等等。配合ASP使用也十分方便。根据网站的设计,需要动态显示的数据最好都放在数据库里。比如说,课下的拓展知识,做练习用的模拟试题,存储用户信息的用户表,存储教师信息的表。存储与实验相关信息的实验表。还有就是存储学生留言提问信息的问题表。2.3系统的性能需求网络教学平台是一个教育类型的网站,所以必须做到实用、简洁。界面不必太过花哨,要做到界面简洁明了、导航清晰。用户只要能上网就可以进行
11、学习,以及实现上传,下载等功能。并且,网站应该具有可扩充性,此次设计的网络教学平台只是针对单门课程的设计,还有很多内容还不全面,因此网站的设计要能够方便日后的更改、扩充等。3概要设计3.1网站结构概要设计对于功能较为全面的网络教学平台来说,一般都有教学大纲、教师信息、讨论答疑、课程作业、教学笔记、教学邮箱、资源下载等一系列复杂的内容。由于时间,资源的限制,所以本次设计只能实现其中一部分的功能。网站主要结构如下图所示。图3.1网站结构3.2数据库结构概要设计由于整个网站的内容不是特别多,所以把所以的表设计在了同一个数据库中,数据库中数据表的情况如图3.2所示。 图3.2数据库结构设计4数据库的设
12、计整体来说包含了六个数据表,第一个是users表,用了存储学生注册信息的表;第二个是mnst表,用来存储所以的模拟试题的信息的表;第三个是tzxx表,用来存储拓展学习内容的表;第四个是syzd表,用来存储与实验相关内容的表;第五个是team表,用来存储教学团队的信息;第六个是question表,用来存储学生问题的表。4.1用户表(users)表4-1 用户表(users)字段名数据类型长度是否允许为空S_num文本20否S_name5S_passwordS_class是S_tel12以上为用来存储用户的用户表,共有五个字段,其中S_num和S_password分别用做用户名和登录密码。并且不允
13、许为空,最长不得超过20个字符。S_name用来存储用户的姓名,也不允许为空值。S_class和S_tel作为辅助选项,可不填写。4.2模拟试题(mnst)表4-2 模拟试题(mnst)id数字长整形title50content备注模拟试题表用来存储模拟题的相关信息,有三个字段,第一个是便于搜索的id字段,第二个是title字段,用来存放试题的标题,例如说章节之类的内容。第三个字段是content,备注类型的字段,可以用来存放较长的文本。4.3拓展学习(tzxx)表4-3 拓展学习(tzxx)Num拓展学习(tzxx)表用来存放拓展学习的相关信息,也有三个字段,第一个是便于搜索或进行参数传递的
14、num字段。第二个是title字段,用来存放拓展学习中小的知识点的标题,例如关键字之类的内容。第三个字段是content,备注类型的字段,可以用来存储较多较详细的内容。4.4实验指导(syzd)表4-4实验指导(syzd)S_id自动编号S_goalS_contentS_reqment实验指导(syzd)表是用来存放于实验实践里相关的信息。S_id字段是自动编号字段,用做搜索或参数传递。S_name是用来存放实验名称的字段,长度不超过50个字符长。S_goal是存放实验目的的字段,类型为备注类型,可存储比较长的文本。S_content是存放实验内容的字段,同样是备注类型的字段。S_reqmen
15、t是存放实验要求的字段,数据类型为备注类型。4. 5教学团队(team)表4-5教学团队(team)T_idT_name8T_jieshaoT_imgOLE对象教学团队(team)表是用来存放教师相关资料的,T_id是用来存放一些编号的,比如说教师的员工号,当然也可以在输入数据前将它更改成自动编号,这样每次添加数据的时候就不用反复输入编号。T_name用来存储教师姓名或称呼之类的信息。T_jieshao则是存储对教师个人资料的详细介绍。T_img是一个OlE对象,用来存储相关的照片信息。4. 6疑问留言(question)表4-6疑问留言(question)SQSA疑问留言(question)
16、表是用来存储学生提交上来的问题的,S_num是配合前面的用户表设置的,将这样两个表连接在一起的时候就可以查询到已登录学生的账号和问题了。SQ字段用来存储学生的问题,和前一个字段组合形成数据表的主键,避免一个学生提出相同的问题。SA则用来存储对某一个问题的答案。以上是关于本次设计的数据库中所用的到的表的设计,尽最大可能将所用能存储到数据库中的内容存储到数据库中,以便将来后台进行修改。使用ASP+Dreamweaver+Access开发出来的网站只能尽量做到这些。5网页功能的设计5.1首页首页页面布置如下图:图5.1首页界面首页的布置是这样的:上面是导航条,且在本次设计中,所有的网页上部都是主要的
17、导航条。根据一个全局变量的判断,先判断用户是否登录成功。若没有登录的时候,左侧上方是一个简单的登录界面,要求输入用户名和密码,且两个都不能为空,若输入为空则显示如下图:图5.2出错界面表单的代码设置如下: 用户名:input type=text name=yonghu / 密 码:passwordmimasubmittijiao value=登录 &buttonzhuce注册 onclick=location.href=regist.asp 在提交表单的时候先进行的是一个检查函数:checkdata()function checkdata() if( f1.yonghu.value
18、.length20 ) alert(请输入正确的用户名 !)return false;if( f1.mima.value.length请您输入正确的登录密码 !函数对两个输入的文本框进行检查,首先是用户名是否为空或者是超过了规定的长度。然后检查密码输入是否规范。表单提交后执行的操作是chklogin.asp,其代码如下: username=trim(request.form()password=trim(request.Form(rs.open select * from users,cn,1,3do while not rs.eof if username=trim(rs(S_num) an
19、d password=trim(rs(S_password) then response.cookies(denglu)=okusername)=rs(snameS_name response.redirect index.asp end if rs.movenext loopif rs.eof then %script language=vbscript MsgBox 对不起,用户名不存在,或密码输入错误 location.href = javascript:history.back() 以上代码判断从前一个页面传递过来的两个参数是否是正确的用户名和密码,如果用户名不存在或者密码错误的话则弹
20、出消息框提示用户,用户名不存在或密码输入错误。然后返回首页重新输入。如果数据库中存在该用户且密码正确,则将全局变量”denglu”的值设置成”ok”, 并且将用户名作为全局变量保存起来。然后主页用户登录位置则变动如下,以用户1234为例:图5.3登录成功界面登录成功后,左侧上方显示的是用户的登录学号以及注册姓名,姓名为空则显示空白。下方是提供了学校的一些超链接,方便学生访问其他网站。右侧则是和数字多媒体相关的一些简介。若用户没有进行注册的话,可以点击用户登录的地方,有一个注册按钮,点击注册按钮可进入注册界面。界面如下:图5.4用户注册界面如上图,用户注册界面要求用户输入的信息比较简单,用来做用
21、户名的学号、学生姓名、密码,班级以及手机号。此注册页面由导航和下方注册信息表单构成。因为用户名和密码不能为空,所以同样设置了一个检查函数,和首页的检查用户名和密码输入是否为空的函数原理是一样的,在这里就不过多介绍了。还有一点是密码的确认输入,因为密码要输入两次,所以在检查函数里有一项是检查两次输入的密码是否相同。在提交表单之后检查无误的情况下转到处理页面adduser.asp,其代码如下:%num=trim(request.form(numsname=trim(request.Form(namepwd=trim(request.form(pwdsclass=trim(request.Form(sclasstel=trim(request.form(telrs.addnewrs()=num)=sname)=pwdS_class)=sclassS_tel)=telrs.updaters.closecn.close注册成功,请重新登录此段代码的