基于php的学校综合管理系统的设计与实现_第1页
基于php的学校综合管理系统的设计与实现_第2页
基于php的学校综合管理系统的设计与实现_第3页
基于php的学校综合管理系统的设计与实现_第4页
基于php的学校综合管理系统的设计与实现_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGEV硕士学位论文(专业学位)基于PHP的学校综合管理系统的设计与实现基于PHP的学校综合管理系统的设计与实现姓名:姓名:学号:所在院系:软件学院职业类型:工程硕士专业领域:软件工程指导教师:副指导教师:2014年3月AdissertationsubmittedtoTongjithedegreeofMasterDesignandimplementationofPHP'sintegratedmanagementsystembasedonschoolDesignandimplementationofPHP'sintegratedmanagementsystembasedonschoolCandidate:Candidate:StudentNumber:School:SchoolDiscipline:MasterofEngineeringMajor:SoftwareEngineeringSupervisor:March,2013基于PHP的学校综合管理系统的设计与实现目录PAGEII基于PHP的学校综合管理系统的设计与实现同济大学学位论文版权使用授权书本人完全了解同济大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。学位论文作者签名:年月日

同济大学学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。学位论文作者签名:年月日基于PHP的学校综合管理系统的设计与实现目录PAGE2目录摘要 1ABSTRACT 2第一章绪论 31.1研究背景及意义 31.2研究现状 41.3研究思路 51.4研究主要内容 61.5论文组织结构 6第二章系统开发技术 82.1Mysql数据库技术 82.2使用Apache服务器 102.3使用PHP进行程序设计 112.4HTML、JavaScript和CSS的技术 132.5系统开发环境 162.5.1服务器环境配置 162.5.2代码编写工具 16第三章系统需求分析 183.1系统的运行环境 183.2系统需求分析 183.2.1系统功能需求 183.2.2数据库需求分析 20第四章系统设计 224.1系统设计概要 224.2系统功能设计 224.2.1系统功能设计 231)用户管理模块 232)学生管理模块 243)教师管理模块 244)成绩管理模块 245)个人设置模块 254.2.2系统功能界面设计 254.3系统数据库设计 264.3.1数据库结构设计 264.3.2数据库表设计 28第五章系统实现 355.1登录页面的设计与实现 355.2系统各模块的设计与实现 375.2.1用户管理模块 375.2.2学生管理模块 395.2.3教师管理模块 445.2.4成绩管理模块 455.2.5个人设置模块 50第六章几个关键技术的解决方法 526.1导入excel数据技术 526.2批量删除技术 576.3批量更新功能的实现 59第七章总结与展望 657.1总结 657.2后期工作 65参考文献 66致谢 68×××××应用系统实现ABSTRACTPAGE77基于PHP的学校综合管理系统的设计与实现摘要摘要建设《学校综合管理系统》就是在传统校园的基础上,利用先进的信息化手段和工具,将校园原有的各项资源数字化,使传统的校园在时间和空间上得以延伸。组建现代化数字资源库,摒弃传统的档案管理模式;提高工作效率,减少日常工作的资源消耗。本系统是基于PHP开发的,开发主要包括后台数据库的建立和维护,以及前端WEB应用程序的开发两个方面。基于B/S结构设计,采用PHP脚本设计语言作为开发工具,使用Apache服务器和Mysql数据库,并将PHP语言嵌入了HTML、JavaScript和CSS来完成系统功能的实现。本系统主要包含学生管理、教师管理以及成绩管理等功能模块,很好的满足了学校对日常管理工作的需要。本系统操作简单、维护方便、实用性强。主要目的是为了通过网络更加方便的实现高校日常管理工作,实现信息网络化,促进管理工作的规范化,推进高校的信息化建设。关键词学校综合管理,PHP,数据库基于PHP的学校综合管理系统的设计与实现ABSTRACTABSTRACTBuilding"integratedschoolmanagementsystem"isbasedonthetraditionalcampusbasedontheuseofadvancedinformationtechnologytoolsandtoolsoftheoriginalcampusresourceswilldigitizethetraditionalcampuscanbeextendedintimeandspace.Theformationofamoderndigitallibrary,insteadofthetraditionalfilemanagementmode;improveefficiency,reduceresourceconsumptiondailywork.ThesystemisbasedonPHPdevelopment,thedevelopmentincludetheestablishmentandmaintenanceofback-enddatabase,andapplicationdevelopmentfrontWEBtwoaspects.B/Sstructure-baseddesign,usingPHPscriptinglanguageasadevelopmenttool,usingApacheserverandMysqldatabaseandPHPlanguageembeddedintherealizationHTML,JavaScriptandCSStocompletethesystemfunctions.Thesystemincludesstudentmanagement,teachermanagementandperformancemanagementmodules,goodtomeettheneedsofthedailymanagementoftheschoolwork.Thesystemissimpletooperate,easytomaintain,practical.Themainpurposeistoachieveamoreconvenientdailymanagementofcollegesanduniversitiesacrossthenetwork,informationnetwork,topromotestandardizationofmanagement,promoteinformationtechnologyuniversity.Keywords:SchoolManagement,PHP,Database基于PHP的学校综合管理系统的设计与实现第一章绪论第一章绪论当今社会是一个技术知识飞速更新的时代,为了能适应社会的发展,人们需要一种新的途径来更快、更方便地获取知识。传统的手段已无法满足人们对获取信息的需求,这就要求我们找到新的出路,使得建设网络化、信息化、现代化的数字化学校成为了必须。计算机校园网络凭借着它规范化、标准化的建设,为学校的管理、行政办公、校内外交流等方面均提供了全面有力的技术支持和保障。为了拓展办公手段、提高办公效率,建设和开发学校综合管理系统以便于进行学校的管理。学校综合管理系统主要包括三个模块:学生学籍信息管理模块(对学生信息的增加、删除、修改和查看)、教师信息管理模块(对教师信息的增加、删除、修改和查看)、学生成绩管理模块(教师成绩录入、试卷分析录入、成绩维护、历史成绩维护与报表打印)。通过学生综合信息管理系统,使琐碎细致的学生学籍信息、教师信息及学生成绩管理等工作准确高效的完成,方便了工作的开展,提高了工作效率和质量。信息技术水平的快速更新和学校办学要求的不断变化,使得信息化的管理建设成为了现代化学校基础建设的首要标志。由此说明了实现学校综合管理系统是十分必要的,努力实现让师生们更加利用信息化服务,来使得动工作效率提高,工作更便捷。[1]1.1研究背景及意义随着信息和网络技术的飞速发展和广泛应用,整个社会由此步入信息化时代。科学技术的进步和其迅猛发展给管理系统带来了革新性的变化,互联网成为了人类生活不可或缺的一部分。在此大环境背景下,顺应科技发展,对学校综合管理系统进行逐渐网络化、信息化的建设,可以提高工作效率、便于开展工作。目前的单个机器终端使用的管理系统,也日渐无法满足全校校务管理工作的要求、现代化办公的需求。人们渴望利用当今飞速发展的互联网,使得办公的过程得以自动化,使得校务流程具备远程工作的能力,实现学校不同部门不同的权限和功效,并且在此基础上功能更完整,操作更加方便,界面更加亲和。目前,学校综合管理信息化建设的工作中仍存在着一些问题,简要描述如下:1)部分工作人员对学校综合管理信息化的内涵和重要性认识不足,片面的认为只要利用计算机就能解决一切的问题,从而导致了在工作过程中的主观能动性发挥不够。例如:在需要填写报表时才考虑到要开始收集数据,在面临检查时才考虑到信息化建设的进度没有赶上计划。2)信息化建设的规范没有明确规定。在实际管理操作过程中,面对人员变动、重新分班等事务时,只能单独建一套数据,使得系统的数据一致性差,并且数据在各部门之间的重复建设,耗费了大量的人力物力。3)学校综合管理在信息化时代中,担负起了如何连接教师与学生的转变,教师如何录入成绩,如何进行试卷分析,学生对教师授课的评价反馈等任务。学校管理事宜的复杂多样,做学校综合管理平台系统是全面支持学校工作的关键。部分管理人员对于处理信息的能力还需提高。由于管理人员习惯于使用传统的方法进行信息建设、管理和交换,对于先进技术手段的运用略显生疏。信息化时代,环境的变化非常快,为顺应时代潮流与发展趋势,学校综合管理逐渐向扁平化发展。1.2研究现状学校综合管理系统致力于使学校的主要日常管理工作得到信息化的建设。例如学生成绩管理这一单一的功能模块,就已涉及校、系、师、生诸多方面。又伴随着教学体制的深化改革,学分制、选课制度的开展和深入,使得成绩管理工作及保存管理日趋复杂、繁重。研制开发一款操作简单、功能强大的学校综合管理系统已迫在眉睫。纵观国内研究现状,学校在数字校园理论逐步应用的过程中,一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但学校日常管理工作的信息化建设相对起步较晚,且在安全性和信息更新化方面存在着一定不足。各部门、各功能所需要的资料均单独建立,数据冗余度高、一致性差、共享性差。在目前以管理者为主体的系统中,管理者对于信息的认知与喜好直接决定了信息的取舍,这样导致了用户真正的需求不易被发掘,也无法真正的满足用户需求。由于整体信息化程度相对还是比较落后,加之经费短缺以及理论体系不健全的原因,国内学校教务管理系统在机构设置、服务范围、服务质量及人员要求上与国外相比都存在着一定的差距。纵览国外研究现状,学校日常管理工作的信息化建设与国内相比起步较早,且具有稳定的、大规模的技术队伍来为此提供服务和技术支持,整体信息化程度相对较高,现在已较为成熟和稳定。学校综合管理系统软件能做到充分依托校园网,实现了信息的集中管理、分散操作、信息共享等要求,使传统的学校管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的学校综合管理系统打下良好的基础。1.3研究思路研究方法:首先,与学校管理人员进行充分沟通,通过沟通了解学校管理人员的工作需求,由此分析得出应用需求,并作出功能分析简介。根据前期需求分析确定选用Apache、PHP和Mysql来进行学校综合管理系统的构建。开发过程中使用模块化的形式来完成每个功能的实现、完成数据库信息系统的设计与开发、对系统进行测试并提出修改意见、进一步完善系统。实施方案:1)应用需求与功能分析:通过与学校管理人员的沟通交流,了解工作人员的工作需求,确定应用需求分析和功能分析。分析的重点在于了解对于数据的操作性要求、完整性要求和安全性要求。这是建立数据库应用系统设计的第一步,也是数据库后续阶段设计的首要条件。据此需求分析来对数据库需要处理的数据进行总结、整理、归纳,确定数据库的应用范围以及功能。分析的结果是否准确的反映用户的实际要求,将直接影响到设计结果是否合理和实用。2)数据库管理系统的选择:依据学校综合管理系统的功能性需求、数据的处理方法、数据的保存管理和应用范围、数据库所需网络化等特点,最终确定选用Apache+PHP+Mysql来构建学校综合管理系统。3)数据库表设计:数据库表设计需要在需求分析和数据库处理的数据内容的基础上建立,是数据库应用系统设计过程中重要的环节。本系统主要设计使用三个库表:教师库表、学生库表、成绩库表。4)查询系统的设计及结果显示:查询系统的设计包含唯一查询和综合查询。唯一查询是从三个数据库表中通过查询某一条件(例如学号、工资号)得出有效的、唯一结果;综合查询是在查询统计中通过设置其他条件进行查询得到的结果。查询系统的结果显示对应两种查询方式,得到唯一查询的结果和综合查询的结果两种。5)各个数据库表之间的关系:建立数据库表之间的联系的目的是使数据一致性好、完整性好,使得各数据库中的含有的数据能够实现互相联通、互相调用,由此避免在数据库中重复的数据的存在而造成的数据冲突、数据冗余,最终实现了查询速度的提高和存储空间的要求减小。6)可视化操作界面的实现:在人机交互界面设计中以用户为中心,按照顺序原则、功能原则、一致性原则、频率原则、重要性原则和面向对象原则来进行设计。首先考虑软件的数据结构、总体结构和过程性描述,再确定为完成此系统人和计算机分别完成的任务是什么,接着考虑界面设计中的典型问题(考虑系统响应时间、用户求助机制、错误信息处理等方面),借助工具构造界面原型,交用户审评,根据反馈意见进行修改直到完成为止。1.4研究主要内容研究目标:为了实现对学校综合管理的信息化建设,通过设计建立基于B/S的学校综合管理系统,对学校的学生、教师、成绩等多种信息进行统一管理和保存,使得普通校务管理得以更便捷、顺利的进行,并明显提高工作效率。研究内容:通过对学生信息管理系统、教师管理系统、成绩综合评测录入系统等各个模块的功能需求分析,以及数据库的设计和分析,通过最优选择,最终确定通过使用Apache+PHP+Mysql的应用来构建功能齐全、操作见面、界面亲和友好的学校综合管理系统。拟解决的关键问题:应用需求与功能分析:需求分析的任务是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求然后在此基础上确定新系统的功能。确定设计目的和应用需求分析是建立数据库应用系统设计的第一步,也是数据库后续阶段设计的首要条件。主要需要克服的困难有一下三点:供需交流困难、需求动态化、后续影响复杂三个方面。软件设计:软件设计的任务是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。主要包括了软件的结构设计、数据设计、过程设计以及接口设计。依据学校综合管理相关资料的内容、处理方法、数据管理和应用范围以及本数据库所需网络化的特点,可选用Apache、PHP和Mysql来构建。1.5论文组织结构本论文从系统的概念出发,在需求分析的基础上,进行了详细设计并最终实现了学校综合管理系统中用户管理模块、学生管理模块、教师管理模块、成绩管理模块、个人设置模块以及系统数据库的设计和实现等方面。论文共分为七章,组织结构如下:第一章,通过对学校综合管理系统国内外发展现状和存在的问题的介绍,着重分析了该课题的研究意义、研究思路、研究主要内容以及论文的组织结构。第二章,相关技术与开发环境介绍,对系统设计实现涉及到的关键技术进行了讨论介绍。主要详细介绍了B/S结构设计、Apache服务器、PHP语言、MySQL数据库以及HTML、JavaScript、CSS的技术应用。第三章,对学校综合管理系统的需求进行了全面的分析,具体研究了的系统运行环境、整体架构需求、系统功能需求、系统数据库需求等方面。第四章,对学校综合管理系统进行了详细设计,主要包括:系统概要设计、系统功能设计和系统数据库设计三个方面。从用户管理、学生管理、教师管理、成绩管理、个人设置以及系统数据库等几个方面介绍了学校综合管理系统的详细设计情况。第五章,学校综合管理系统的实现,介绍了从用户管理、学生管理、教师管理、成绩管理、个人设置几个模块的实现情况。第六章,总结系统中几个关键技术的解决方法。主要包括:用户登陆技术、数据备份和恢复技术、数据字典及其调用功能的实现。第七章,对整个课题研究的成果作一个总结,并对学校综合管理系统中存在的不足进行了说明,最后对学校综合管理系统的发展前景作出阶段性展望。基于PHP的学校综合管理系统的设计与实现第二章系统开发技术第二章系统开发技术根据学校综合管理系统的数据管理、处理方法、应用范围以及本数据库所需网络化的特点,可选用B/S结构进行设计,用Apache、PHP和MySQL来进行构建,力求完成一个功能齐全、操作见面、界面亲和友好的学校综合管理系统。2.1Mysql数据库技术建立学校综合管理系统的数据库,不但要考虑到当前的使用情况,更要进行长远发展的考虑。在一般情况下,基础数据库会因为平台使用时间的增加而进行扩张以及积累。依据这个原理,学校综合管理系统的数据库同样也会随着使用时间的推移而逐渐变得庞大起来。又因为基础的数据库是整个系统的核心,如果一旦在构建好后再进行改动,整个系统都要耗费非常大的精力和时间来进行变动,就如同牵一发而动全身。这就要求我们做到,在数据库的建立初期,应当充分考虑以下三个问题。1)数据库是否高效。随着时间的推移,数据积累变得丰富、庞大后,是否仍然能实现高速的运转。2)数据库是否安全和稳定。从某个方面来看,数据库是整个系统的核心,当数据库一旦出现了问题,整个系统都会因此而停止了工作,这就要求数据库应当能够长期在线且安全的、稳定的运行。3)数据库的可扩展性。由于学校的综合事务的信息化建设在不断开展和加深,这就有可能对今后的学校综合管理系统提出新的要求,增加新的功能。数据库良好的可拓展性能,能够方便的今后根据工作要求增加新的功能模块,来适应学校的发展要求。综合上述分析,建议采用目前主流的大型关系数据库结构产品,如Mysql、Oracle等。本系统原始数据的组织采用MySQL数据库系统。在这个数据库中,用户可以将自己的数据分别保存在各自独立的存储空间中,根据不同的用户所对应的不同使用权限分别进行查看、添加,删除及修改其中的数据的功能,可以查询并检索相关数据。下面就MySQL数据库进行简要说明介绍:MySQL是一种关系型数据库管理系统(关联数据库将数据保存在不同的表中)由Oracle公司所拥有,瑞典MySQLAB公司开发完成。由于MySQL将不同的数据保存在不同的表中(并非所有数据放在同一个大仓库内),因此提高了灵活性、增加了运行速度。访问数据库的最常用标准化语言即是MySQL所使用的SQL语言。中小型网站的开发一般情况下都首要选择MySQL作为网站的数据库,主要是由于它成本低、体积小、速度快以及开放源码这些特点所导致。在本系统中,使用MySQL搭配PHP和Apache可以组成良好的开发环境。MySQL的具有如下特点:1.使用C、C++编写,使用多种编译器进行测试,从而保证了源代码的可移植性。MySQL还为多种编程语言提供了API(例如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等)。2.MySQL可运行在不同的操作系统下。简单地说,MySQL支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统平台。这就意味着在一个操作系统中实现的应用能够非常方便的移植到另一个操作系统下来进行使用。3.MySQL的核心程序采用完全的多线程编程。由于MySQL支持多线程,所以能够充分的利用CPU的资源。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。用多线程和C语言实现的MySQL能很容易充分利用CPU。4.MySQL拥有强大的查询功能。优化的SQL查询算法,能有效地提高查询速度。支持同一查询中混用来自不同数据库的表,从而使得查询变得快捷和方便。5.MySQL可以以一个单独的应用程序来应用在客户端服务器的网络环境中,也可以作为一个库而嵌入到其他的软件中去。6.MySQL支持多种语言,除了常见的中文编码(如GB2312、BIG5),也支持日文(Shift_JIS)等用来作为数据表名和数据列名。7.MySQL提供TCP/IP、ODBC和JDBC等多种数据库连接途径。由于MySQL支持ODBCforWindows,因此MySQL支持所有的ODBC2.5函数和其他许多函数,这样使得Access可以实现连接MySQL服务器,从而使得相关的应用能够被更大程度的进行扩展。8.MySQL提供用于管理、检查、优化数据库操作的管理工具。9.MySQL支持大型的数据库,它可以处理拥有上千万条记录的大型数据库。虽然对于用PHP编写的网页来说只要能够存放上百条以上的记录数据就足够了,但MySQL可以方便地支持上千万条记录的数据库。作为一个开放源代码的数据库,MySQL可以针对不同的应用进行相应的修改。10.MySQL有一个非常灵活而且安全的权限和口令系统。当客户与MySQL服务器连接时,他们之间所有的口令传送被加密,而且MySQL支持主机认证。11.PHP为MySQL提供了强力支持,PHP中提供了一整套的MySQL函数,对MySQL进行了全方位的支持。结合目前主流技术应用的趋势,建议本系统采用B/S(Browser/Server浏览器和服务器)结构。随着Internet技术的兴起,C/S结构已经不是满足全部的需求,因此出现了一种变化或者改进的B/S结构系统。在此结构系统下的用户工作界面,通过WWW浏览器来实现显示,由此简化了客户端的电脑负载荷重,降低了系统维护与升级的成本和工作量,也使得用户的总体成本得到了一定的节约。如图2.2.1学校综合管理系统网络核心构成图:图2.2.1学校综合管理系统网络核心构成图B/S最大的优点:客户端零安装、零维护。它不用安装任何专门的软件,只要有一台能上网的电脑,就能够在任何地方进行操作,并且系统的扩展性非常良好。随着B/S结构的越来越广泛的应用,逐渐地也推动了AJAX技术的发展。使得程序能在客户端电脑上进行部分处理,因此很大程度上的减轻了服务器的负担,在能够完成局部实时刷新的同时也增加了交互性。2.2使用Apache服务器本系统选用Apache作为运行平台。Apache是世界使用排名第一的Web服务器软件,由于它的跨平台性能和安全性能好而被广泛使用在在几乎所有的计算机平台。Apache支持许多种特性,其中的大部分可以通过编译的模块来进行实现。一些通用的语言接口支持PHP、Tcl、Python和Perl。时下常用的认证模块包括:mod_digest、mod_auth和mod_access。其他的有诸如SSL和TLS支持(mod_ssl),代理服务器(proxy)模块,URL重写(mod_rewrite)模块,定制日志文件(mod_log_config)模块,以及过滤支持(mod_include和mod_ext_filter)的实现。Apache能够通过使用网页浏览器来使用免费脚本Visitors、AWStats进行分析。[13]Apache服务器具有很大优势,与IIS、Tomcat、WebLogic服务器相比对照结果如下:1)同IIS相比:第一,Apache完全免费,而IIS是需要收费的;第二,Apache完全对外开放源代码,任何人都可以查看、分析代码,并发现其中的漏洞,发布补丁来弥补漏洞,从而大大的提高了它的安全性能。而IIS的源代码没有对外开放;第三:安装Apache并且进行设置就可以使它长期稳定的进行工作,而IIS在经常在使用过程中出现代号为500的错误,有时还会莫名的出现假死现象,这就要求用户需要不定期的重新启动IIS服务才能保证它的正常运行。2)同Tomcat相比:第一,Apache较之Tomcat可以更加迅速的对静态页面进行处理;第二,Apache可以进行配置而Tomcat不可以;第三,Apache比Tomcat更加的强壮。3)同WebLogi相比,Apache更适合于使用PHP编写程序的用户,而且速度更快。综上所述,Apache与其它WEB服务器软件相比,安装更方便,配置更简单,管理更容易,效率更高,安全性也更高等优势。2.3使用PHP进行程序设计本系统的开发采取目前较流行的PHP进行编程。现在就PHP简单介绍如下:PHP是一种无缝运行的、多平台的、服务器端的、嵌入式的脚本语言。PHP的语法很独特,它其中混合了C语言、Java语言、Perl语言以及PHP自创的语法。PHP是免费的软件,具有自由软件的一般性质和优势,由于函数库功能的丰富和强大、版本更新速度比较快、移植速度比较快,而很快得到了大家的认可和喜欢。PHP还支持了几乎所有流行的操作系统、数据库。PHP还可以通过C语言、C++语言来对程序进行相应的扩展。[6]PHP较之Perl、CGI相比,能更快速地执行动态网页。与使用其他编程语言生成的动态页面相比较,使用PHP编程而生成的动态页面,是将程序嵌入到HTML的文档中去进行执行。因此,执行效率比完全生成HTML标记的CGI要高不少。PHP可以做到执行编译后代码,由此编译可以达到加密和优化代码运行,从而使得代码的运行速度更快。当前主流的Web网站通常情况下大部分使用Apache环境下使用的PHP语言进行编程。

PHP的工作原理,如图2.1所示,现简要说明如下:(1)用户在浏览器地址栏中输入要访问的PHP页面文件名,回车触发此PHP请求,并将请求传送到支持PHP的WEB服务器端。(2)WEB服务器接受用户从浏览器栏中输入的请求,根据请求的后缀名字进行简单的判断。如果这个请求是PHP请求,WEB服务器将从硬盘或者内存中来取出用户所想要访问的PHP应用程序,并发送回到PHP的引擎程序。(3)PHP引擎对WEB服务器传来的文件进行详细的扫描,并且根据相关的命令从后台进行读取,对数据加以处理,由此来动态生成相关的HTML页面。(4)PHP引擎将动态生成的HTML页面返回给WEB服务器端,WEB服务器端再将HTML的页面返回给客户端的浏览器。

HTTPHTTPResponseHTTPRequest后台程序系统函数数据库PHP解释程序(服务器端)客户端图2.1PHP工作原理图PHP较之其他语言更具有优势,简要描述如下:1)与需要付费购买的ASP、JSP相比,PHP是免费的,通过计算机连接网络下载即可使用。2)PHP是开放源代码的,这一特性使得开发人员可以在应用过程中,可以对PHP进行相关的修改和优化,使得PHP功能更完善和强大。PHP也因为开房源码的关系,使得PHP的版本升级速度比较快(目前广泛使用的版本为PHP5),也因此被认为是更可靠、更便捷、更强大的动态Web页的开发工具。3)与不支持跨平台的系统ASP相比,PHP拥有良好的跨平台性、移植性也更加良好。用PHP写出来的Web后端的CGI程式,可以轻易的移植到不同的工作平台,并且将PHP作为Apache服务器的内置模块、CGI程序而进行运行,使得大型项目的开发和维护相对容易简单一些。4)与ASP连接数据库的非常复杂方法相比,PHP的数据库支持功能非常强大,几乎能够覆盖目前所有较为流行的数据库系统。包括MySQL数据库、MicrosoftSQLServer数据库、VFP数据库、Oracle数据库等在内。5)与JSP开发难度大、开发周期长、对程序员能力要求较高、开发成本高相比,PHP只要求了解基本语法、语言特色和相关文档即可容易上手、简单易学,且开发周期短,开发成本低。6)更需要进行着重说明的是:PHP与MySQL的组合更加紧密、更加优越;他们的组合非常简单而又具有强大的完善的功能。PHP对MySQL的有最全面的支持,它拥有大量的管理和维护MySQL的工具。并且含有其他的数据库所没有的诸如mysql_insert_idm、mysql_affected_rows等函数来进行相关的操作。还有一点需要说明,MySQL的速度比MicrosoftAccess更快,Oracle速度比MySQL要快,可费用较高,因此一般中小型的开发不常使用Oracle数据库而使用MySQL。2.4HTML、JavaScript和CSS的技术1)HTML语言的技术应用HTML是HyperTextMarkupLanguage的缩写,它具体指的是超文本标记语言。HTML是标准通用标记语言下的其中一种应用,也是一种规范和标准,它通过相关的标记符号来标记出来要显示的网页中各个组成的部分。浏览器按照顺序阅读其相关的网页文件,并根据标记符的解释以及显示它的标记内容,而对待书写出错的标记将不再指出它的错误,并且不停止解释执行的过程,编制者只有通过显示出来的效果来进行分析,估计出错的原因和出错的部位。[5]需要特别说明的是,对于不同的浏览器,相同的标记符也有可能出现不完全相同的解释,由此导致有不同的显示效果。HTML文档(即Homepage的源文件)指的是放置了标记的ASCII的文本文件,一般情况下它的文件扩展名为.html或.htm。需要进行说明的是,在本系统中,大量的用到了表格来布局页面。2)JavaScript语言的技术应用JavaScript语言是一种新的描述性的语言,类似于ASP技术,常常在HTML页面中嵌入Java程序段和JSP标记来使用。JavaScript不同于Java,它们无论是在概念上还是在设计上,都是两种完全不同的语言。JavaScript是一种解释型的、基于对象的脚本语言,也是一种动态网页技术标准。并且用它来开发的Web应用是具有跨平台性的,可以应用于windows系统、linux系统等操作系统上。用户通过使用Javascript,和网页之间的关系实现了实时性、动态、交互性,同时Javascript使网页包含更多活跃的元素和更加精彩的内容。

Javascript编写的程序必须要在支持Javascript语言的浏览器下才能够运行。Javascript不仅短小精悍,

同时又是在客户机上执行的,因此大大提高了网页的浏览速度和交互能力。

而且它又是制作Web网页而专门开发的一种简单的编程语言。

JavaScript

提高了网页的互动性。它简化了HTML文段,即使HTML文段有规律地重复,也可以减少下载时间。JavaScript

能快速响应用户的操作,可以即时检查已经提交的表单,免去了CGI验证所造成的时间浪费。JavaScript具有很多优点,主要包括如下几点:(1)JavaScript具有简单性的特点。JavaScript是轻量级的编程语言,它可以用于插入HTML页面,像其它脚本语言一样,JavaScript也是一种解释性的语言,它提供一个简易的开发过程。它的基本结构形式与C程序、C++程序、VB程序、Delphi程序比较类似。但它与上述程序结构不同的是,它不需要进行编译,直接在程序运行的过程中被逐行地进行解释分析。一般情况下,它常常与HTML标识结合在一起,方便了用户的使用操作请求等。(2)JavaScript发送HTTP请求(AJAX)。可以使HTTP请求发送的是主动进行的,而不再是机械式的通过用户的点击才能由此激发。主动发送的HTTP请求为了用于和服务器端交互、取得相关数据,并且根据返回的数据(文件类型包括:XML、JSON、字符串。)给用户以回馈,应用此技术比较经典的例子例如:表单验证。(3)JavaScript具有良好的跨平台性。由于JavaScript与操作的环境无关,仅仅依赖于浏览器的本身,所以只要能运行浏览器并且支持JavaScript的浏览器就都可以将它正确执行。(4)JavaScript具有动态操作DOM的特点。一般情况下,浏览器根据第一点请求的结果作出响应(比如刷新图片、显示新的div),可以得到一个满意的回馈。最值得一说的是,这些动作不是通过刷新整个页面来实现的,因此这种局部刷新会让用户觉得更自然,更友好,而不会很突兀。3)CSS技术应用目前有三种主要的方法可以在站点网页上使用CSS的样式表:第一种:外部样式,具体指的是将网页链接到外部样式表。第二种:内页样式,具体指的是在网页上创建嵌入式的样式表。第三种:行内样式,具体指的是应用内嵌样式到各个网页元素。每一种方法均有它的优缺点,需要在使用的过程中,能够做到具体问题具体分析对待。当需要在站点的所有网页或部分网页上使用同一种样式时,建议选择使用外部样式表。具体做法是在一个或者多个外部样式表中定义要使用的相关样式,再将它们链接至所有的网页中去,由此来确保所有的网页的外观能够具有一致性。在这种情况下,当需要更改样式的时候,只需在刚才所使用的外部样式表中修改一次,就可以使得该更改的结果显示至所有与该样式表相链接的所有的网页上。一般情况下,外部样式表通常以后缀名.css来做为文件扩展名,经常能见到的例如:style.css。在需要此样式的页面中,将他的链接加入进来,如下所示:<linkhref="/层叠样式表/样式.css"rel="stylesheet"type="text/css"/><linkhref="/百度百科.样式"rel="stylesheet"type="text/css"/>当人们仅仅需要对当前网页的样式进行定义的时候,可以选择使用嵌入的样式表。嵌入的样式表是一种级联的样式表,它的位置一般位于在网页的<HEAD>标记符内。这里要求嵌入的样式表中的样式只能在同一网页上使用,具体应用如下所示:<styletype="text/css"><!--/*把声明的样式包含在一个网页注释中,这样可以解决较老的浏览器不识别style的问题*/body{background:grey;}--></style>使用内嵌样式以应用级联样式表属性到网页元素上。如:<pstyle="@importurl('style3.css');">层叠样式表文档</p><!--不能在“样式”style属性中使用@import-->举例说明,在MicrosoftFrontPage2000中,某些格式的设置特性会作为内嵌样式的自动应用。举例说明比如在使用“边框与阴影”这个命令的时候,(在“格式”菜单上)在普通段落的周围应用框,FrontPage会据此记录下相关的格式设置信息,同时作为段落标记符的内嵌样式的属性(例如∶<pstyle="border-style:solid">)。当其他的某些属性的应用需要使用CSS的时候,则需要使用HTML来进行相应的设置。如果想只通过单一的使用CSS来实现内嵌样式的设置,可以在菜单栏中进行选择相关“样式”按钮(位于网页元素的“属性”对话框里)的应用类或ID选择器中来进行嵌入式的样式设置。本系统中所编写的样式表的作用主要包括以下几点:改变字体的颜色、改变超级链接的颜色、取消超级链接的下划线、改变按钮、文本框和下拉菜单外观等方面。具体所使用的CSS样式表如下图2.2所示图2.2CSS样式表2.5系统开发环境2.5.1服务器环境配置由于PHP良好的跨平台性,使得PHP可以在不同的操作系统平台上运行。在不同的操作系统下建立PHP工作环境的方法不同。PHP的工作环境配置可以简要的用公式来进行如下表示:使用Apache加PHP加MySQL来构建,这就要求我们安装Apache服务器、安装PHP,再对Apache服务器和PHP进行相应的配置来搭建PHP工作环境。安装完Apache和PHP后,接着进行MySQL的安装,并且通过数据库设计符合要求的三个数据库表,最后完成数据库的相关连接配置。完成上述的安装配置之后,最后需要安装的是AppServ安装包。AppServ是指的是PHP的工具组合包,可以方便初学者快速的完成架设,AppServ中包含的软件如下:Apache、ApacheMonitor、PHP、PHP-Nuke、phpMyAdmin。[21]2.5.2代码编写工具PHP的应用程序指的是以.php为扩展名的纯文本文件。因此可以使用任何文本编辑器(例如:记事本)来打开并进行编辑它。这里介绍一个专为PHP所设计的网页程序进行编辑的软件,名字叫做“DzSoftPHPEditor”。它具有对于PHP的编辑功能、侦错功能、浏览功能、原始码检视功能、档案浏览功能、可自订的原始码样本等多种完善而强大的功能。因为它拥有一套功能强大的PHP编辑器,使得无须架设网站主机,可以直接测试PHP的指令码。这里还有一款可以用来编辑PHP的软件,名字叫做“Editplus”。使用此软件进行PHP编辑,只需将后缀名为.php的程序文件放在Apache服务器的www目录下(该目录必须要有可执行权限),则可通过HTTP的方式对PHP程序进行相关访问。在本系统的开发过程中,我们主要使用Editplus进行相关的编辑。EditPlus是由韩国SangilKim(ES-Computing)出品的,它的特点是小巧且功能完善强大。它可以用来处理HTML、程序语言以及一般普通文本的的32位编辑器,甚至可以通过这款软件,来设置用户工具,将它作为C语言,Java语言,PHP等语言的简单IDE。EditPlus(文字编辑器)功能强大,被众多人士认为是可以取代记事本而使用的一款文字编辑器,主要是因为它包含如下强大的功能:例如拥有无限制的撤消与重做功能、可以进行英文拼字的检查、拥有自动换行功能、可以进行列数标记、搜寻取代的功能、以及同时编辑多文件和全屏幕浏览等众多强大的功能。除此之外,使用它还有一个方便之处,它拥有监视剪贴板的功能,此功能可以使它省去粘贴的步骤,而直接同步于剪贴板,并且进行自动粘贴,直接进入到EditPlus的窗口中去。它还是一个很好用的HTML编辑器,它支持多种语言,例如:C语言、C++语言、Perl语言以及Java语言。除此之外还支持例如颜色标记、HTML标记等标记功能。最值得说明的还有,对于习惯用记事本来进行网页编辑的程序员,它内建了完整的HTML&CSS1的指令功能,这一特点可以帮你节省大概一半以上的网页制作时间。只要你的IE浏览器的版本为3.0以上,它能结合IE浏览器于EditPlus窗口中,使得可以直接预览编辑好的网页。综上所述,EditPlus是一个功能强大的、多用途、多状态的编辑软件。总的来说,EditPlus的优点有以下几个方面:配置简单、内置浏览器功能、启动速度非常快、功能强大而完善、界面简洁美观友好、支持中文情况良好、支持语法的高亮便于编写代码、对代码的折叠也进行相关的支持、代码的自动完成(但其功能比较弱)也进行支持。EditPlus的不足之处主要体现为:没有相应的代码提示功能。基于PHP的学校综合管理系统的设计与实现第三章系统需求分析第三章系统需求分析3.1系统的运行环境本系统采用B/S结构设计,使用了Apache服务器和MySQL数据库,用PHP语言进行程序的编写,并将PHP语言嵌入了HTML、JavaScript和CSS来完成系统功能的实现,使用了EditPlus代码编写工具。操作系统:windows

Server

2003

内存512M以上,推荐1G

硬盘剩余空间1G及以上

CPU1.7G数据库:MySQL

3.2系统需求分析3.2.1系统功能需求1)学校综合管理信息化建设的现状及存在的问题目前,计算机在学校综合管理工作中应用现状:根据计算机在学校综合管理工作中的具体功能,可以将其分为文字处理、电子表格、通讯、数据库管理、绘图等几个方面。目前绝大多数的学校已经淘汰了完全手工处理学校综合管理信息的工作方式,计算机和手工处理并存是现在学校教务系统的主要工作方式。市场调查结果表明,我国学校综合管理软件应用标准不高。目前在学校综合管理工作中,计算机主要用来解决学校内部的学生信息的管理、老师信息的管理、各种成绩单的统计等;OFFICE系统和金山汉字系统主要用于文字处理、电子表格,还有FOXBASE+、FOXPRO等管理软件。

但是在学校综合管理工作中,计算机显得并不十分完美,还有一些比较严重的问题,主要表现在:学生、教师、学生成绩等信息数据标准化、规范化不够,管理不够规范;不能保证数据的共享,并且不能完整的记录历史记录;日常成绩分析统计等一些工作,不能通过目前的管理系统完成;数据和文档之间无法通过网络实现简便的直接调用;不同部门、单位之间的学生信息、教师信息以及学生成绩不能共享更新,因此重复劳动多、工作效率差,不能简化学校综合管理工作。

目前学校综合管理中应用计算机的水平参差不齐,计算机在学校综合管理工作中的应用水平尚待提高。[11]2)学校综合管理系统功能需求分析针对用户的操作特点,在设计的系统中要尽可能实现“多点多选、少录少补”,即通过鼠标、键盘的点击等图形化的操作来完成对信息的添加、删除、修改,减少键盘文字、符号输入等操作方式,以避免录入数据时产生错误。针对用户权限的细化管理。本系统的使用人员包含系统管理员、学校各部门的管理人员、教师、学生,分别定义为系统管理员用户、高级用户、教师用户和学生用户。每级机构都分别对应不同的模块,不能越权操作。系统能通过用户登录来判断用户权限,实现用户的身份验证。其使用权限划分如下,(1)系统管理员:拥有所有数据库表的查看,修改,新增,删除,查询,批量修改的权限。(2)高级用户:拥有该院系或部门全体人员信息的查看和查询权限;拥有该部门或该院系添加成绩和修改成绩的权限;拥有该部门或该院系的删除权限。(3)教师用户:拥有查看学生学籍信息的权限;拥有查看和编辑自己教师信息的权限;拥有成绩录入、成绩分析录入、成绩报表打印的权限。(4)学生用户:拥有查看和编辑自己学籍信息的权限;拥有查看、打印自己成绩报表的权限。 图3.1功能用例图1 图3.2能用例图23)数据处理的特定需求(1)人员增加:有学生、教师新进入时,在学生学籍信息和教师基本信息中输入进入新进人员的情况。(2)人员减少:有学生、教师要减少的时候,把此人从学生学籍信息或教师基本信息中删除掉。(3)人员信息修改:当需要对学生学籍、教师基本信息实施修改数据时,可以随时或定时他改变。(4)人员信息查询、浏览功能:根据具体情况,既可以单个条件查询,也可以用各种条件组合在一起进行查询。如,已知某人的姓名只需输入这个人的姓名,便可以将此人的基本信息显示出来进行浏览。如过想找到某种类型的人,就可以通过不同条件的组合来进行查询。通过列出来的人员,进行查找符合条件的人。然后再通过单个查询来查找具体人员的情况。(5)成绩录入:教师用户根据本学期自己教授课程的考试情况,对每门课的成绩进行手工录入,包括平时成绩、实验成绩、期末考试成绩等。(6)成绩分析录入:教师用户根据本学期自己教授课程的成绩情况,对每门课的成绩分析进行录入提交,包括试题总量、考题难易度、考题覆盖面、题型结构是否合理等。(7)打印报表功能:教师用户或学生用户可以根据自己的需要打印相应的报表。如学生用户可以打印学生考试成绩表,教师用户可以打印教师专用表、成绩分析表等。3.2.2数据库需求分析用户需要体现在各个数据实体的增减、修改、查询等基本操作上,这要求数据库结构能充分满足各种信息的输入和输出上。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。[3]根据前面的介绍,总结该系统的数据实体主要包括如下几种。代码信息:代码名称、代码内容、拼音、代码、显示、系统标志、执行标准。用户管理信息:用户名、用户密码、工资号、姓名、系所、系所系部、用户部门、用户身份、用户权限、备注。教师信息:工资号、姓名、姓名拼音、密码、用户身份、性别、民族、身份证号、出生日期、政治面貌、加入时间、教职工类别、教职工当前状态、是否为班主任、所带班级、学历、学位、所学专业、毕业院校、毕业时间、现任职称、职称级别、现任职务、研究方向、个人简介、MSN、QQ、Fetion号、电子邮件、移动电话、单位电话、家庭电话、家庭详细地址、照片、电子印章、备注。学生信息:学号、姓名、密码、姓名拼音、英文姓名、曾用名、系所、系所简称、系所系部、性别、身份证号、出生日期、民族、政治面貌、加入时间、籍贯、家庭出身、本人成分、是否有校内学籍、是否国家学籍、入学时间、入学年级、所属年级、注册状况、专业、专业方向、班名、班级职务、学制、校区、学生类别、培养方式、外语语种、中国语种、结束学业方式、毕业日期、毕业届别、毕业证书编号、曾在何时何地受过何种奖励、曾担任过何种社会工作有何特长、移动电话、宿舍电话、MSN、QQ、Fetion号、电子邮件、主要家庭成员及社会关系情况、家长姓名、家长移动电话、家庭电话、家庭详细地址、照片、备注。学生成绩信息:学号、姓名、性别、系所、班名、课程编码、课程名称、课程序号、开课单位、开课单位2、专业、年级、培养方案层次、课程性质、课程类别、学分、合计、上课班级、工资号、任课教师、现任职称、考试方式、考试性质、考试情况、考试学期、考试日期、考试地点、考试座位号、实验成绩、实验成绩比例、平时成绩、平时成绩比例、期末成绩、期末成绩比例、总评成绩、成绩等级、成绩绩点、录入日期、录入状态、是否显示、用户名。试卷分析信息:课程编码、课程名称、课程序号、学院、开课单位、专业、年级、培养方案层次、课程性质、课程类别、学分、合计、授课、实验、上机、实训、学期、周学时、课程方向、上课年级、上课班级、班级人数、上课人数、上课学期、上课地点、上课时间、工资号、任课教师、现任职称、考试班级、考试学期、考试日期、命题方式、考试形式、评卷教师、试题与教学大纲的要求、试题总量、考题难易度、考题覆盖面、题型结构是否合理、其他方面分析:、考试成绩分析-教学中存在的问题及改进意见、备注、是否显示-控制高级用户录入/修改数据是否进入主查询数据库、用户名-记录录入人员身份。3.2.3外部接口需求分析1)用户界面:由于本系统主要进行学校综合事务的管理,所以要求用户界面简洁简单、界面友好,便于操作。2)硬件接口:使用网络接口。3)软件接口:采用B/S结构,数据传输使用HTTP协议。3.2.4其他非功能性需求分析性能需求:本系统应该具有较好的备份措施,能确保在硬件发生故障等情况下,使得丢失的数据可以恢复,避免可能因为数据丢失而造成的损失。精度的要求:日期时间需要精确到秒,使得类似于成绩录入等需要计时自动保存的功能可以准确完成;其他的数据只需符合报表、表单的精度要求即可。吞吐量需求:应做到大概1000人以上同时使用本系统时,每个人也都能得到及时并且正确的相应。健壮性:当本系统遇到用户的非法操作(比如输入非法数据、跨越权限的操作时)以及相关的软件、硬件可能出现异常操作情况时,要求本系统应该能继续正确的进行当前的运行,并且对用户的非法操作进行提示。灵活性:本系统应该为将来的扩充和修改提供预留的接口。使得系统是可扩充、可增加和修改的,并且在删减功能的时候不会对其他的系统功能进行破坏。

完整性:本系统应具有防止非法访问、对用户的访问进行记录、防止数据被篡改等保护系统数据完整性和关联性的功能,这就要求网络设施、硬件设施等都要建立相应的保护,来使数据和访问都通过特定的方法来完全保护起来。基于PHP的学校综合管理系统的设计与实现第四章系统设计第四章系统设计4.1系统设计概要系统在开发设计时,除了要实现学校综合管理系统的需求外,还应按照一定的设计原则进行整体设计,以保证系统开发的效率。并且能够通过利用开发技术实现系统多模块功能的集成,能够对各种要求做出快速响应,并能对整个决策平台进行统一管理。1)整体性原则本系统的开发采用了“总体规划、分步实施”的开发策略。即在开发之前先进行总体分析与总体设计(总体规划),然后在总体规划的约束下按预先的步骤进行分步开发。2)实用性原则实用性是衡量软件产品质量的一个重要指标,产品的设计是否符合用户的需求,是否充分考虑到了用户的义务特点,是否针对用户的工作习惯进行独特设计,是系统成败的一个关键因素。因此,系统在开发之初对需求分析环节十分重视,需求分析的结果将直接影响到系统最终的设计结果。实用性是本系统开发的一个重要设计原则。3)模块化设计原则本系统设计目的之一是实现办公自动化,这就要求系统必须具备较高的灵活性。因此,本系统采用了模块化的设计原则,使不同模块的功能相对独立,加强了系统的可伸缩性,为日后的系统模块的升级、扩展做好了准备。4)权限管理原则不同的使用人员,根据不同的工作范畴和级别分为不同的用户组,每个用户组被授予的不同的权限,里面可以有一个或多个用户。本系统为全校各部门管理人员、教师、学生等科室分别建立用户组,各类工作人员帐户都放在自己的组中,通过对用户组的授权,使每个工作人员只对自己管理的信息表有更新权,对其他人员库无权访问。4.2系统功能设计该系统基于B/S结构,在数据库维护的各个环节中,利用互联网工具,从数据的提交—审核—查询等过程中,借助强有力的权限管理系统,提供完善的业务流程多级审批流程控制.4.2.1系统功能设计学校综合管理系统是网络协作平台的一个模块,根据需求分析,本系统通过以下三个功能模块来完成系统的设计,分为学生学籍信息管理模块、教师信息管理模块以及学生成绩管理模块,如图4.1系统功能模块图所示。学校综合管理学校综合管理系统学生管理模块教师管理模块成绩管理模块图4.1系统功能模块图学校综合管理系统集成了代码库、学生库、教师库、成绩库、用户表库五个库的管理于一体,分别记录及保存了学生学籍基本信息、教师基本信息、学生成绩的相关信息。学校综合管理系统如图4.2所示:学校综合管理系统学校综合管理系统用户表库学生成绩库教师信息库学生学籍库用户表库学生成绩库教师信息库学生学籍库代码库图4.2学校综合管理系统综合图用户管理模块用户管理模块实现了系统管理员对系统用户的管理功能,包括对系统用户成员和非成员的查询、成员之间的角色转变操作、角色的创建、修改、删除以及角色权限的绑定功能。系统设定了五级用户,分别为:超级管理员、系统管理员、高级用户、教师用户和学生用户。其中超级管理员负责所有管理员的添加、删除、修改、授权等,系统管理员有较大的权限,除系统维护中的用户管理只有对自己的用户信息有修改权限,其他模块拥有最大的权限;高级用户为不同部门主管人员,可根据授予的操作权限管理各个部门情况;教师用户可以查看、编辑教师信息、学生学籍信息、学生成绩、学生成绩分析等信息;学生用户拥有查看、编辑自己学籍信息以及查看自己成绩信息的功能。2)学生管理模块该模块主要完成对学校学生信息的浏览查看、新增、修改、批量修改、删除、导入等功能。能根据不同的查询条件对学生进行查看浏览。3)教师管理模块该模块主要完成对学校教职工信息的存储,包括浏览、新增、修改、批量修改、删除、导入等功能。能根据不同的查询条件对教职工进行查看浏览。4)成绩管理模块该模块主要完成实现成绩的导入,编辑,删除,查询等功能。主要包括教师成绩录入,试卷分析录入,成绩维护,历史成绩维护和报表打印等功能。如图4.2所示:成绩管理模块成绩管理模块报表打印历史成绩维护成绩维护教师成绩录入试卷分析录入报表打印历史成绩维护成绩维护教师成绩录入试卷分析录入图4.2成绩管理模块功能图教师成绩录入主要是教师通过自己所教授的班级课程可以从选择检索条件,然后查询出该班的学生,方可录入成绩,并单击提交按钮,存入到库中。学生则可以通过登录系统进入该模块查看自己所学课程的成绩。试卷分析录入,教师根据检索条件,查询出已经录入的成绩,来分析整个班级学生的成绩反应出的问题。成绩维护是可以查看当前学期的成绩,历史成绩维护是查看历年历学期的成绩,当然,成绩维护可以通过各种不同的方式进行成绩的添加、修改和删除。报表打印,可以打印学生的个人成绩单,班级成绩单等。5)个人设置模块个人设置模块的主要功能是用户用来修改密码和找回密码的。1)更改本次登陆用户的个人设置,更改密码。2)忘记了密码的教师用户和学生用户,需要输入操作员账号,并正确回答之前自己设置的找回密码提示问题来找回密码。4.2.2系统功能界面设计人机界面设计是软件系统设计的重要组成部分。因为它承担着操作人员和计算机系统信息交流和互动。Shneiderman曾经说过,“对于许多计算机化的信息系统用户而言,挫折和焦虑是他们日常生活的一部分。他们努力学习语言和菜单选择系统以帮助他们更好地完成工作。有些人甚至对计算机、中断和网络产生了恐惧,因此刻意地回避计算机化的系统”。本数据库系统的日常用户并不是计算机专业人员,而是每天都面临着大量繁重复杂工作的管理人员,因此要让他们易于接近并乐意使用本数据库,界面设计显得非常重要和必要。界面设计原则如下:尽量保持界面的简洁明了,不设计复杂和易于混淆的界面。尽量提供默认选项,这样可以使操作者简化操作程序,减少击键次数,提高工作效率。把窗体界面具备相似功能的控件和按钮,放在一个总控件之下,易于操作和管理。在颜色的使用上,尽量简单明了,恰当美观,不采用色彩艳丽,令人头晕目眩的明亮色调。重要的信息没有录入填充或漏项,系统设计有提示框,防止重要信息丢失和不全。字体选择上,与普通人使用习惯相同,如汉字选择5号宋体,英文选择NewTimesRoman字体等,加强亲切感和易用性。重要的或者对数据产生重大影响的操作,均设计有提示对话框,如删除数据、覆盖数据记录等。先进行整体规划,设计一个前台界面的效果图,在效果图中确定基准色调以及各个功能模块的具体位置。这个环节最常用的软件是Macromedia公司出品的Fireworks,因为它不仅具有设计图像的功能,在网页开发方面也是非常优秀的工具。在进行布局及色彩设计工作中,通过Fireworks将未来的系统整体呈现在舞台中,这样可以避免返工,使得用户在第一阶段就可以了解系统的全貌,形成整体印象。待用户认可满意后,开始进入页面的切割及生成工作,通过Fireworks的切割工具来规划未来的程序摆放,使得程序嵌入后不出现划位。在Fireworks中,可以在单个应用程序中创建和编辑位图和矢量两种图形,一切都可以随时进行编辑。除此之外,工作流可以实现自动化,从而满足耗费时间的更新和更改要求。Fireworks与多种产品集成在一起,包括Macromedia的其它产品(如EditPlus、Flash、FreeHand和Director)和图形应用程序及HTML编辑器,从而提供了一个真正集成的Web解决方案。利用HTML编辑器自制的HTML和JavaScript代码,可以轻松地导出Fireworks图形。最后,生成静态的HTML网页在EditPlus中待用。4.3系统数据库设计数据库的设计在一个软件系统中占有十分重要的地位。数据库结构设计得好坏将直接影响到系统功能的实现以及系统的执行效率。设计合理的数据库结构可以提高数据存储的效率,从而能充分保证数据的完整性和一致性。4.3.1数据库结构设计本系统设计采用的数据库包括5个数据库表,其中基本数据库表2个分别是:①代码数据库表,用以存贮系统中数据字段内容代码;②用户信息库表,用以存贮系统管理员和高级用户的个人信息。另外3个基本库表分别存放学生学籍基本信息、教师基本信息和学生成绩信息等。数据库结构如图4.4所示,数据字典用户管理数据字典用户管理基本数据库基本数据库学生成绩库教师信息学生成绩库教师信息库学生学籍库查看、添加、删除、修改查看、添加、删除、修改图4.4数据库结构图2)各表之间的数据库关系如图4.5所示,本系统一共建立了五张表,分别是:教师信息表、学籍信息表、学生成绩表、成绩分析表和代码表。每张表中含有的字段具体见需求分析—数据库分析章节,每张表之间通过主键ID进行连接查询。图4.5系统数据库关系图4.3.2数据库表设计前面所述介绍了数据库的结构设计和数据库表之间的关系图,下面将会列出部分图表的主要数据库表字段类型和具体说明信息。1)学生学籍信息表:主要记录学生的一些基本信息,存储学籍信息。其主要字段为:学号、姓名、密码、姓名拼音、英文姓名、曾用名、系所、系所简称、系所系部、性别、身份证号、出生日期、民族、政治面貌、加入时间、籍贯、家庭出身、本人成分、是否有校内学籍、是否国家学籍等。具体信息如表4.1所示。表4.1学生学籍信息表序号字段名称字段类型字段宽度字段说明idint10唯一记录索引,自动增加1xhvarchar20学号,(必填)xmvarchar50姓名,(必填)xmpyvarchar50姓名拼音,(必填)ywxmvarchar50英文姓名cymvarchar50曾用名unamevarchar20用户名,不显示,即学号,如05609001,(必填)upassvarchar20用户密码,初始值为工资号,(必填)departvarchar20用户部门,不显示,统一为:jwgl,(必填)levelvarchar20用户级别,不显示,单选:见code.xls文件,(必填)yhqxtext用户权限,不显示,(必填)sysyhqxtext用户权限,不显示,格式:jw01等,(必填)xsvarchar50系所,单选:见code.xls文件,即部门,(必填)xsjcvarchar50系所简称,单选:见code.xls文件,即部门简称,(必填)xsxbvarchar50系所系部,单选:见code.xls文件xbvarchar12性别,单选:见code.xls文件sfzhvarchar18身份证号,格式:15/18位csrqvarchar10出生日期,格式:2008-02-02mzvarchar10民族,单选:见code.xls文件zzmmvarchar50政治面貌,单选:见code.xls文件jrsjvarchar10加入时间,格式:2008-02-02jgvarchar50籍贯,单选:见code.xls文件,即中国行政区划中的省市级,其代码格式:XX0000共6位。jtcsvarchar50家庭出身,单选:见code.xls文件brcfvarchar50本人成分,单选:见code.xls文件sfyxnxjchar2是否有校内学籍,单选:见code.xls文件,即是否标志sfgjxjchar2是否国家学籍,单选:见code.xls文件,即是否标志rxsjvarchar10入学时间,格式:2001-09-01njvarchar4年级,单选:见code.xls文件,如2005、2006、2007、2008、2009…ssnjvarchar4所属年级,单选:见code.xls文件,如2005、2006、2007、2008、2009…zczkvarchar10注册状况,单选:见code.xls文件zyvarchar50专业,单选:见code.xls文件zyfxvarchar100专业方向bmvarchar20班名,单选:见code.xls文件bnzwvarchar50班内职务,单选:见code.xls文件xzvarchar1学制,单选:见code.xls文件xqvarchar50校区,单选:见code.xls文件xslbvarchar20学生类别,单选:见code.xls文件pyfsvarchar20培养方式,单选:见code.xls文件,如统招、定向、委培、自费、五年一贯制、校内专升本、高职升本wyyzvarchar50外语语种,单选:见code.xls文件zgyzvarchar50中国语种,单选:见code.xls文件jsxyfsvarchar10结束学业方式,单选:见code.xls文件bbyhddbyyytext不毕业或等待毕业原因byrqvarchar10毕业日期byjbvarchar6毕业届别,单选:见code.xls文件,如2007届、2008届、2009届、2010届等byzsbhvarchar50毕业证书编号jltext曾在何时何地受过何种奖励,cftext曾在何时何地受过何种处分,tctext曾担任过何种社会工作有何特长,yddhvarchar20移动电话ssdhvarchar20宿舍电话,ssdzvarchar100宿舍地址,msnvarchar20MSNqqvarchar20QQfetionvarchar20Fetion号,中国移动飞信业务号。dzyjvarchar50电子邮件jtcyjshgxtext主要家庭成员及社会关系情况,姓名,关系,政治面目,详细工作单位及职务。jzxmvarchar50家长姓名jzyddhvarchar20家长移动电话jtdhvarchar20家庭电话jtxxdzvarchar100家庭详细地址zpvarchar50照片,本人可以上传自己的照片gxsjdatetime20更新时间bztext备注sfxschar1是否显示,控制高级用户录入数据是否进入主查询数据库yhmvarchar20用户名,记录录入人员身份2)教师信息表,存储教师基本信息,方便教师登陆系统,为学生录入成绩,分析试卷。基本信息表:工资号、姓名、姓名拼音、密码、用户身份、性别、民族、

温馨提示

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

评论

0/150

提交评论