赵庆华_基于BS模式单片机学习系统的设计与实现_在线学.doc_第1页
赵庆华_基于BS模式单片机学习系统的设计与实现_在线学.doc_第2页
赵庆华_基于BS模式单片机学习系统的设计与实现_在线学.doc_第3页
赵庆华_基于BS模式单片机学习系统的设计与实现_在线学.doc_第4页
赵庆华_基于BS模式单片机学习系统的设计与实现_在线学.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河北工业大学2010届本科毕业设计说明书 河北工业大学毕业设计说明书 作 者: 赵庆华 学 号: 062636 学 院: 计算机科学与软件学院 系(专业): 计算机科学与技术 题 目: 基于B/S模式单片机 学习系统的设计与实现在线学习 指导者: 田红丽 讲师 评阅者: 2010年 5月 27日1毕业设计中文摘要基于B/S模式单片机学习系统的设计与实现在线学习摘要:网络教育是在网络环境下,充分发挥网络的教育功能和教育资源优势,向教育者和学习者提供的一种教和学的环境,通过传递数字化教育信息,开展交互式的同步或异步的教学活动;具有教学资源共享、学习时空不限、交流多向互动和便于学习合作的特点与优势。通过分析与研究:为了方便广大师生的交流与学习,本课题采用B/S结构,利用开源的PHP技术进行开发,实现在线教育系统中单片机的视频教学模块。教师通过各章的题库可以组织成相应的预留作业,学生可以通过查询相关的预留作业内容,在网上完成,并提交,教师可以通过网络进行判作业,提交分数,学生可以通过网络查询自己作业的情况,这样对教师,对学生都比较好管理。本文主要介绍了当前的一些WEB开发领域的基础开发技术,开发平台的搭建以及该课题模块的的实现。关键词: 单片机学习 网络教育 WEB B/S结构 模块毕业设计外文摘要Title B/S Model Based on SCM Learning System Design and Implementation Online Learning AbstractNetwork education is a kind of teaching and learning environment full of network educational function and educational resources advantages to provide to educators and learners, and interactive teaching activities through education and information transfer digital synchronous or asynchronous under network environment. It has the features and advantages which are sharing teaching resources, learning from any time and space, communicating study interaction and easy to corporate study.Through the analysis and research, the subject adopts B/S structure and uses broad source technology of PHP to achieve online education system in the video teaching modules of chip in order to facilitate the communication and study of the teachers and students. Teachers can reserve the homework through the question bank in every chapter, and students can finish and submit the homework on line through querying related reservation. Teachers also can submit scores through the network, and students can check their homework by network. It is good to teachers and students to manage.This paper introduces some basically developed WEB technologies in present days, building the development platform and the realization of the module.Keywords:SCM learningNetwork education WEB B/SstructureModule目 次1 引言111研究的背景及现状112选题的目的及意义213研究的内容22 开发工具简介321Browse/Server三层体系结构322数据库开发工具MySQL 50简介423PHP简介524数据库的应用625JScript简介726PHP与MySQL综合应用73 需求分析与设计831问题初始分析832目标系统功能需求933目标系统性能需求1134性能需求点列表1235目标系统界面与接口需求1236目标系统其他需求1237特殊需求目标系统假设与约束条件1338详细设计概述1339模块设计14310数据库结构设计154 功能实现及测试2141管理员模块2142教师管理模块2243学生管理模块26结 论30参 考 文 献32致 谢33河北工业大学2009届本科毕业设计说明书1 引言 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。1 介于单片机的重要性,提供一种高效的教育方式网络教育是很重要的,网络教育在高等教育现代化建设中正发挥着越来越重要的作用,通过网络教学,创造数字化学习环境,能够促进教育观念!教学内容和方法的改革,提高教育教学的质量和效益,从而培养学习者具备优秀的社会文化与价值观念,提高学习者的学习能力和在信息社会中生存和发展的能力,在网络教学的实施中,支持教学活动的教学平台集成了网络教学所需的各种应用子系统和工具,成为网络教学的技术基础,虽然国内外已经研发了许多网络教学平台软件,但是从软件的功能与应用效果来看仍然处于探索阶段。211研究的背景及现状 信息时代的未来教育,具有创造性、多样性、开发性和个性化的特点。未来教育发展层次的高低,与教育网络的建设与否息息相关。落后的教学手段与封闭的教学模式,再也不能适应未来教育的需求。我国需要在现代计算机技术基础上,建立起全方位、互动式交流的全新网络教育环境。 单片机作为计算机专业的学生的必修课,在高校教学领域当中还没有实行完善的一个网络在线教育系统,所以这个系统的实现可以提高老师的教学及工作任务的进度,方便了学生的学习过程,该课题的实现对于高校的远程在线教育有重要的意义。 现代远程教育作为一种有效、经济的教学和接受再教育的手段,越来越受到IT厂商的关注。各路网络厂商、系统集成商、软件开发商纷纷推出具有竞争实力的解决方案并与院校合作共同开拓远程教育市场,IT产品采购量呈逐年上升趋势。国外厂商如IBM、Sun、HP、COMPAQ、DELL等都有针对教育行业的解决方案出台,IBM更鼓励支持增值代理商向教育行业渗透;3Com、Cisco、AVAYA的相关产品与方案在教育行业得到广泛应用。国内厂商更是全力投入,联想电脑推出针对教育行业的电脑“儒博士”系列;神州数码也推出了校园网解决方案;TCL投资大额资金,与中央广播电视大学开发世界最大的网络远程教育系统;长城不仅力推网络教育工程,还推出了教育专用电脑;清华同方也在推数字化校园解决方案;另外,微软、Lotus、实达、科利华、飞棱等软件商、集成商的教学方案、校园网方案的应用发展迅速。3-4 目前基于PHP开发的eFront是一套功能齐全的在线学习系统,可以使用多国语言,并且它拥有漂亮的Ajax界面。国内的Moodle在线教育系统也是一种开源的在线教育系统。12选题的目的及意义 随着网络的普及,高校需要寻找新的教育模式。在线教育网是一种新的教育形式。教育网主要服务于学校内的所有学生,为他们很好的提供更多元化的学习环境、更方便复习,预习的学习渠道,更先进的在线测验平台。 本系统通过强大的计算机技术给学生学习单片机知识带来便利。本系统要求采用B/S架构,设计一个在线学习网站,在线学习包括了解单片机教材的大纲,课件学习,教师通过各章的题库可以组织成相应的预留作业,学生可以通过查询相关的预留作业内容,在网上完成,并提交,教师可以通过网络进行判作业,提交分数,学生可以通过网络查询自己作业的情况。这样一来可以减少师资力量的消耗;改进学习方法和效率;方便老师了解学生的情况,以便实施更好的教学方案;建立高效的信息传输和服务平台,提高信息处理速度和利用率。 13研究的内容 本文研究的内容有以下几个方面:1、单片机的理论基础,教学大纲;2、软件工程开发的原理,流程以及应用;3、Mysql数据库的工作原理,实际应用;4、Web开发中W3C的标准以及应用;5、Windows+Apache+Mysql+PHP开发平台及环境;6、实现单片机在线教育的在线视频学习模块、教程下载模块;7、实现单片机在线教育的学生作业查询、完成、提交以及完成作业后的分数查询模块;8、实现单片机在线教育的教师添加、删除、查询题库并添加作业、批改作业、作业完成的统计情况模块。2 开发工具简介21Browse/Server三层体系结构 在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。Browser/Server结构极大地简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。 在Browser/Server三层体系结构下,表示层、功能层、数据层被分割成三个相对独立的单元: 第一层是表示层,即浏览器。在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。 第二层是功能层,即具有应用程序扩展功能的Web服务器。在功能层中包含系统的事务处理逻辑,位于Web服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行联接,通过SQL等方式向数据库服务器提出数据处理申请,然后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。 第三层是数据层,即数据库服务器。在数据层中包含系统的数据处理逻辑,位于数据库服务器端。它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。 由以上分析可以看出,三层的Browser/Server体系结构是把二层Client/Server结构的事务处理逻辑模块从客户机的任务中分离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web服务器。于是由原来的两层的Client/Server结构转变成三层的Browser/Server结构。这种三层体系结构如图2-1所示。这种三层结构中层与层之间相互独立,任何一层的改变不影响其它层的功能。是目前比较流行的网络软件系统结构,逐渐成为网络软件开发商的首选。在许多场合下,“浏览器/服务器”结构可以取代“客户机/服务器”结构的客户端软件。9图2-1 (B/S三层系统结构图)22数据库开发工具MySQL 50简介 MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。 SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以允许你存储记录文件和图像。 MySQL主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,我们一直都在使用MySQL,其环境有超过40个数据库,包含10,000个表,其中500多个表超过7百万行,这大约有100个吉字节(GB)的关键应用数据。 MySQL建立的基础是业已用在高要求的生产环境多年的一套实用例程。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。MySQL的官方发音是“My Ess Que Ell”(不是MY-SEQUEL)。 下表描述MySQL一些重要的特征: 使用核心线程的完全多线程;可运行在不同的平台上多种列类型:1、2、3、4、和8字节长度的有符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、 TIMESTAMP、YEAR、SET和ENUM类型;利用一个优化的一遍扫描多重联结(one-sweep multi-join)非常快速地进行联结(join);在查询的SELECT和WHERE部分支持全部运算符和函数;通过一个高度优化的类库实现SQL函数库并且像他们能达到的一样快速,通常在查询初始化后不应该有任何内存分配;全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、SUM()、MAX()和MIN()支持ANSI SQL的LEFT OUTER JOIN和ODBC语法。 你可以在同一查询中混用来自不同数据库的表;一个非常灵活且安全的权限和口令系统,并且它允许基于主机的认证。口令是安全的,因为当与一个服务器连接时,所有的口令传送被加密。具备索引压缩的快速B树磁盘表,每个表允许有16个索引,每个索引可以由116个列或列的一部分组成,最大索引长度是256个字节(在编译MySQL时,它可以改变),一个索引可以使用一个CHAR或VARCHAR字段的前缀。定长和变长记录;用作临时表的内存散列表;大数据库处理;所有列都有缺省值,你可以用INSERT插入一个表列的子集,那些没用明确给定值的列设置为他们的缺省值;函数名不会与表或列名冲突。例如ABS是一个有效的列名字。对函数调用的唯一限制是函数名与随后的“(”不能有空格。所有MySQL程序可以用选项-help或-?获得联机帮助;服务器能为客户提供多种语言的出错消息;客户端使用TCP/IP连接或Unix套接字(so44cket)或NT下的命名管道连接MySQL;MySQL特有的SHOW命令可用来检索数据库、表和索引的信息,EXPLAIN命令可用来确定优化器如何解决一个查询。23PHP简介 PHP是英文超级文本预处理语言Hypertext Preprocessor的缩写。PHP是一种 HTML内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛的运用。PHP的另一个含义是:菲律宾比索的标准符号。 PHP独特的语法混合了C、Java、Perl以及 PHP 自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。 PHP的特性包括:1、开放的源代码:所有的PHP源代码事实上都可以得到,PHP是免费的。2、PHP的便捷性:php十分便捷,学习简单。3、基于服务器端:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。4、嵌入HTML:因为PHP可以嵌入HTML语言,所以学习起来并不困难。5、简单的语言:PHP坚持脚本语言为主,与Java和C+不同。6、效率高:PHP消耗相当少的系统资源。7、图像处理:用PHP动态创建图像。8、面向对像:在php4,php5 中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序。1024数据库的应用2.4.1添加记录如果用户希望在数据库特定表中添加一条记录,则必须使用INSERT语句,以下是INSERT语句的语法:INSERT INTO表名(字段名称1,字段名称2,.)VALUES(数据1,数据2,.)在使用INSERT添加数据时必须注意以下几点:1、表名后面括号内字段名称的排列顺序与VALUES后面括号内数据的排列顺序必须一致。否则进行数据添加时会发生添加失败。2、未设置的字段,添加数据时其默认值为Null。3、添加的一条数据记录,在建立时就给予其默认值,而值是Null。2.4.2更新记录在数据库的操作上,可分为“添加”、“修改”、“删除”及“读取”等。在了解了“添加”及“读取”操作后,接下来说明如何更新表中的记录。更新数据使用UPDATE语句,基本语法如下:UPDATE表名SET字段1=数据1,字段2=数据2,WHERE语句更新操作分为以下几种情况:1、所有记录全部更新:可以对表所有的记录同时进行内容的更新。2、不更新索引键值而只更新其他字段的内容:仅仅更新每一条记录内的非索引字段内容。3、更新索引键值:必须连带地更新其他表中相关联的记录内容。2.4.3记录的删除要在表中删除一条记录,必须使用DELETE语句,使用该语句必须特别注意,一旦数据被删除,将无法恢复。如果没有指定Where语句,将删除表中的所有记录。以下是DELETE语句的语法:DELETE FROM表名WHERE语句25JScript简介JScript是Microsoft公司对ECMA 262语言规范(ECMAScript编辑器3)的一种实现。除了少数例外(为了保持向后兼容),JScript完全实现了ECMA标准。本概述的目的就是引导您学习使用JScript。JScript是一种解释型的、基于对象的脚本语言。尽管与C+这样成熟的面向对象的语言相比,JScript的功能要弱一些,但对于它的预期用途而言,JScript的功能已经足够大了。JScript不是其他语言的精简版(例如,它只是与Java有点模糊而间接的关系),也不是任何事物的简化。不过,它有其局限性。例如,您不能使用该语言来编写独立运行的应用程序,并且没有对读写文件的内置支持。此外,JScript脚本只能在某个解释器或“宿主”上运行,如Active Server Pages(ASP)、Internet浏览器或者Windows脚本宿主。JScript是一种宽松类型的语言。宽松类型意味着您不必显式定义变量的数据类型。事实上JScript更进一步。您无法在JScript上明确地定义数据类型。此外,在大多数情况下,JScript将根据需要自动进行转换。例如,如果将一个数值添加到由文本组成的某项(一个字符串),该数值将被转换为文本。通过使用JScript相关的框架可以实现良好的界面供用户体验。11-1326PHP与MySQL综合应用 1、连接到数据库 mysql_connect()打开一个到 MySQL 服务器的连接 resource mysql_connect ( string server , string username , string password , bool new_link , int client_flags ) 如果成功则返回一个MySQL连接标识,失败则返回FALSE。 mysql_connect()建立一个到MySQL服务器的连接。当没有提供可选参数时使用以下默认值:server = localhost:3306,username = 服务器进程所有者的用户名,password = 密码。2、选择数据库mysql_select_db()选择MySQL数据库 mysql_select_db(string database_name , resource link_identifier)如果成功则返回TRUE,失败则返回FALSE。 mysql_select_db()设定与指定的连接标识符所关联的服务器上的当前激活数据库。如果没有指定连接标识符,则使用上一个打开的连接。如果没有打开的连接,本函数将无参数调用mysql_connect()来尝试打开一个并使用之。 每个其后的mysql_query()调用都会作用于活动数据库,执行数据库查询。3 需求分析与设计 在我们动手开发一个系统之前,首要任务是要进行系统分析,包括需求分析、可行性分析等,以保证我们将要开发出来的系统是有市场的并且以我们目前所具有的技术和设备,这项计划是可行的。否则,该系统可能是耗费了大量的人力物力,然后却发现没有使用价值,或则根本不可能用有限的成本去实现。931问题初始分析(Early Analysis)3.1.1场景描述(Scene Description)学生打开系统登录页面注册,登录成功后可以进行课程选择学习,可以下载学习该课程的相关资料,可以网上完成作业,然后提交,最后可以查询分数,还可以进入考试系统进行考试。 老师打开系统登录页面,登录成功后可以上传教学课程课件,上传教学视频,布置作业,批改作业,浏览作业统计情况。3.1.2 初始功能提取(Early Function Distill) 学生管理模块:实行会员制,有相应权限才能进入学习,下载,学习资源,查询、选择课程,学习该课程,学生查询、完成、提交作业以及查看作业完成情况; 教师管理模块:登陆教师管理主页后,可以添加课程、删除课程,添加相应的课程教学资源,添加相应课程的视频,添加、查询、删除题库,添加、查询、批改作业。32目标系统功能需求(Function of Target System)该项目要求为一个B/S结构的项目,用户可以通过浏览器访问。网站子功能设计图如图3-1、3-2所示。图3-1 教师职能图图3-2 学生职能图3.2.1管理员模块功能 教师模块功能用例图说明: 参与者为管理员,管理员登陆后可以添加和删除用户,用例图如图3-3所示。图3-3管理员用例图3.2.2教师模块功能 教师模块功能用例图说明: 参与者为教师,教师登录后可以进行个人信息管理(查看、修改、保存);视频教程管理(上传、修改、删除),课程管理(添加、删除)题库管理(添加,修改,删除),作业管理(查阅、生成、修改、删除、批改),教师模块功能用例图3-4所示。图3-4 教师用例图3.2.2学生模块功能 学生系统功能用例图说明: 参与者为学生,学生登录首页后可进行个人信息管理(查看、修改、保存);学习管理包括:选课管理(查询已选课程、进入课堂学习、完成作业、查询课程、选择课程),作业管理(查看预留作业、完成预留作业、查看已完成作业分数),学生系统功能用例图如图3-5所示。33目标系统性能需求(Performance of Target System)3.3.1时间要求(Time Request)图3-5 学生用例图1、查询响应时间最长10s。2、更新响应时间最长10s。3、远程数据传输最长时间10s。3.3.2空间要求(Space Request)1、支持的终端数依据服务器负载计算。2、支持的并行操作的使用者1000。3、处理的文件和记录数最多为100。4、处理任务的数量最多为100。34性能需求点列表(Performance List)详细列出用户性能点列表,提供给后续分析、设计、编程、测试中使用,更是为了用户测试验收中使用。需求性能点列表的格式,如表3-1所示。表3-1 性能需求点列表编 号性能名称性能描述输入内容输出内容1远程数据响应时间点击视频播放响应时间添加视频点击播放播放上传的响应视频2更新响应上传、查询、删除、相应操作响应操作结果响应后的输出结果正确3并行操作查看用户并行操作所能承载用户的数量统计最多在线人数查看服务器承载负荷35目标系统界面与接口需求(Interface of Target System) 界面要求简洁、清晰、风格统一: 1、输入设备:键盘、鼠标; 2、输出设备:显示器、打印机、音箱等; 3、显示风格:IE界面; 4、显示方式:1024*768; 5、输出格式:显示布局。36目标系统其他需求(Other Requirements of Target System) 1、安全性(Security) 防止黑客进行sql注入攻击,防止用户CC攻击,防范文件包含漏洞,防范跨站攻击,注入,灌水,广告。 2、可靠性(Dependability) 保证用户能安全的获取网站教学信息,保护用户密码,保证远程数据的传输。 3、灵活性(Agility) 用户忘记密码可以通过密码提问获取自己的密码,用户还可以修改自己的密码,更改个人信息,通过留言对我们的系统进行建议和改进。 4、特殊需求(Special Requirements) 运行环境需求:虚拟机或服务器,搭建环境为PHP+Mysql+Apache。 安装需求:用户可以通过安装教程文件来安装系统。 推广需求:可以在高校进行推广。37特殊需求目标系统假设与约束条件(Suppose and Restriction of Target System) 1、该系统严禁发布违反法律、法规和政策方面的信息。 2、系统最终可以提供给高校进行网络在线教育。 3、系统投入使用的最晚日期不限。38详细设计概述 1、目的 该设计说明书是面向单片机在线教育系统的系统分析员和程序员的。系统分析员根据需求分析和该说明书进行详细设计,同时也是系统分析员向程序员分配任务的依据。 2、命名规则(Naming Rule)变量对象命名规则:数据库连接变量为全局变量,所有变量的命名规则为英文单词或英文单词加_;类名以单词、大写英文字母开头命名,常量名以大写英文字母命名。数据库对象命名规则:数据库表名以数据库名+英文单词命名、字段名以表名+小写英文单词命名、索引名以列名+index命名、视图名以大写英文单词命名。 3、参考资料(References)(1)软件工程(2)数据库系统实验指导教程(3)信息系统分析与设计 4、相关文档(Related Documents)(1)系统主要目录如表3-2所示。表3-2 系统主要目录表文件夹文件名功能系统文件夹)scms)安装文件夹(install)存储安装文件公用文件夹(include)存储公用文件编辑器(ckeditor)存储编辑器文件图片文件夹(images)存储图片视频文件夹(video)存储上传视频管理员模块(admin)存储管理员模块文件教师模块(teacher)存储教师模块文件学生模块(student)存储学生模块文件课件目录(upload)存储上传资料文件模板文件(templates)存储html模板index.php网站主页login.php登录主页paly.php视频菜单页realplayer.php视频播放页register.php注册处理页register.html注册页 39模块设计(Design of Collective) 1、体系结构设计(Design of Architecture) 体系结构图如图3-6所示。 2、子模块设计(Subsystem Design)单片机在线学习系统包括包括后台管理系统,教师系统,学生系统以及考试系统,以下面为该课题实现的子系统的功能设计介绍。 后台管理模块:实现用户的添加和删除 教师管理模块实现的功能: 教学管理:实现教学大纲,授课计划的编辑以及对课件的上传。 课程管理:实现对课程的添加、删除以及对视频教程的添加删除。 题库管理:实现对题型和题目的添加、删除、修改。 作业管理:实现对作业的生成编辑、查看、批改、删除。图3-6 系统体系结构图 学生管理模块实现的功能: 个人信息管理:实现对个人信息的修改、保存。 课程管理:实现对课程的选择、查看、学习。 作业管理:实现对各章节作业的查看、完成、分数的查看。310数据库结构设计(System Design) 1、数据库表名清单(DB Table List)本模块数据库表名清单,如表3-3所示。 2、数据库表之间关系说明(Relation of DB Table) 数据库表之间的关系如图3-7所示。 数据库结构说明:多个学生可以选择同一个老师的课程,一个学生可以选择多门课程进行学习,一个老师可以同时教多门课程,一门课程有很多章节,一个章节有一份作业,一份作业对应多种题型。对图3-7的表之间的关系可以建立相应的数据库表, 可以对相应的表进行插入,删除,更新操作,对于教师表和学生表,当管理员对这两个表的用户ID进行删除时,其他的表的信息也自动删除,通过PHP脚本程序实现对各表的添加、删除以及更新功能,当教师ID被删除时,相应的各个表相关联的信息都自动删除,当学生表的ID被删除时,相应的这些表与学生表相关联的信息将自动删除。通过表结构的关系绘制E-R图,用户表,选定课程表E-R图如图3-8,学生、教表3-3 数据库表名清单序号中文表名英文表名表功能说明1用户表USER存储用户信息2学生表STUDENT存储学生信息3教师表TEACHER存储教师信息4课程表COURSE存储课程表信息5选定课程表SELECT_COURSE学生选定课程6章节表CHAPTER存储课程章节信息7题目表QUESTION存储题型信息8作业表ASSIGNMENT存储作业信息9作业分数表ASSIGNMENT_MARK存储作业分数信息10答题表QUESTIONS_ANSWERS存储学生答题信息师表E-R图如图3-9,答题表、作业分数表E-R图如3-10所示,课程表,章节表,题目表,作业表E-R图如图3-11所示。图3-7 数据库表关系图图3-8 用户表,选定课程表E-R图图3-9 学生、教师表E-R图图3-10 答题表、作业分数表E-R图图4-6 课程表,章节表,题目表,作业表E-R图 3、数据库表的详细清单(Particular List of DB Table) 本课题实现模块的数据库表清单如表3-43-13所示。表3-4 学生表(STUDENTS)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1学生IDstudent_id整型唯一否主键是2用户名username字符型唯一否外键是3真实姓名truename字符型4性别sex字符型2位5学校school字符型6院系department字符型7班级grade字符型8头像avatar字符型9电话phone字符型30位10邮箱email字符型唯一表3-5 用户表(USERS)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1用户IDuser_id整型唯一否主键是2用户名username字符型唯一否主键是3密码pwd字符型6-20位否否4身份identify整型2位否否5邮箱email字符型否是表3-6 作业分数表(ASSIGNMENT_MARK)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1作业IDassignment_id整型否主键是2学生IDstudent_id整型否是3章节IDchapter_id整型否是4成绩mark整型表3-7 作业表(ASSIGNMENT)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1作业IDassignment_id整型唯一否主键是2题目IDquestions_id整型3学生IDstudent_id整型4章节IDchapter_id整型表3-8 选定课程表(SELECT_COURSE)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1课程IDcourse_id整型否主键是2用户名username整型3课程名course_name整型4选课时间datetime整型表3-9 作业答题表(ASSIGNMENT_ANSWERS)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1作业IDassignment_id整型否主键是2用户名username整型3题目IDquestions_id整型4答案answers整型表3-10 章节表(CHAPTER)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1章节IDchapter_id整型唯一否主键是2课程IDcourse_id整型否是3章数chapters字符型4节数numbers字符型5地址address字符型唯一表3-11 题目表(QUESTIONS)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1题目IDquestions_id整型唯一否主键是2题型questions字符型否3出题者username字符型否4题目名questions_name文本型否5答案answers文本型6章节IDchapter_id整型否表3-12 教师表(TEACHERS)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1教师IDteacher_id整型唯一否主键是2用户名username字符型唯一否3真实姓名truename字符型4性别sex字符型2位5职称professional字符型6头像avatar字符型7电话phone字符型30位8邮箱email字符型9教师标识identify字符型1表3-13 课程表(COURSE)序号字段中文名字段英文名类型、宽度、精度取值约束空否默认值主键/外键索引否1课程号course_id整型唯一否主键是2课程名course_name字符型3时间publish_time日期型4发布者username字符型5标识identify整型否4 功能实现及测试41管理员模块输入:初始管理员账号admin,密码admin;管理员登陆页面如图4-1所示。图4-1管理员登陆页图4-2 添加用户页面处理:管理员登录时,输入管理员编号和密码,击“登录”按钮,系统将自动从数据库中的管理员表中查找是否存在该管理员,若存在则进行系统,否则提示错误。输出:登录成功时,进入管理员管理主页面;登录失败时,进入错误信息页面。管理员添加用户页面如图4-2所示。管理员删除用户页面如图4-3所示。图4-3 管理员删除用户页面42教师管理模块1、教师登陆输入:用户名,密码。教师和学生登陆页面如图4-4所示。图4-4 教师和学生登陆页图4-5 教师管理主页面 处理:登录时,输入用户名和密码,选择身份教师,击“登录”按钮,系统将自动从数据库中的用户表中查找是否存在该用户,若存在则进行系统,否则提示错误。输出:登录成功时,进入用户主页面;登录失败时,进入错误信息页面,教师管理主页面如图4-5所示。 2、教学大纲教师点击教学大纲可以进入教学大纲编辑页进行编辑,提交并查看所提交的信息,页面如图4-6所示。 3、授课计划教师点击教学大纲可以进入教学大纲编辑页进行编辑,提交并查看所提交的信息。 4、教学资源 点击教学资源进入该页,通过浏览上传可以添加、查看相应的学习资源,课件,页面如图4-7所示。 5、添加课程 输入:课程名,开课老师,选择教程类别; 输出:如果有一项不填写则提示输入不能为空,填写完毕提交后则显示课程添加成功,点击返回到上一页,可以在查看课程里面查看已添加的课程。 图4-6 教学大纲页图4-7 教学资源上传 6、添加视频输入:课程名,文件名,章数,文件地址;输出:如果输入没错,点提交后会查询数据库,在教程表chapters中插入填入的信息并显示添加视频成功点击返回查看课程,利用FTP将提交的视频文件上传至服务器视频文件夹中。 7、添加题目输入:选择课程名,输入文件名、章数、节数、教师名、题号、题目、选择题型,点击添加题目按钮;输出:通过后台函数判断并提交插入数据库表questions题目表,如果插入成功则显示题目添加成功,否则输出错误页,添加题目页如图4-8。图4-8 添加题目页5、预留作业输入:选择课程名,输入章数,节数,点击查询题目;输出:点击查询题目按钮后进入数据库查询题库的相应信息并输出相应章节的题目,然后教师可以点击查看每个题目并点击预留为作业将该题目添加入数据库中的作业表,可以查看预留各章作业的统计图,统计图如图4-9所示。图4-9 作业统计图图4-10 作业批改页6、批改作业教师进入作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论