资源描述
天津职业技术师范大学Tianjin University of Technology and Education毕 业 论 文专 业: 软件工程 班级学号: 学生姓名: 指导教师: 二一四年六月天津职业技术师范大学本科生毕业论文研究生教学管理系统的设计与开发总体设计、研究生模块与导师模块Designand Development of GraduateEducation Management SystemThe Overall Design,Module and theTeacherModuleGraduate专业班级: 学生姓名: 指导教师: 学 院: 2014年 6月摘 要 进入21世纪以来,随着社会的发展和信息化的普及,对于计算机的应用已经深入到教育的每个领域,本系统是采用php和MySql技术开发的基于B/S架构的研究生教学管理系统。结合教学管理系统的的特点和软件工程的思想,使用UML(统一建模语言)工具进行系统需求分析和系统的设计。该系统有很强的实用性,在提高高校研究生学习效率与导师工作效率的同时还为学校节省了大量的人力物力。 在该研究生教学管理中,CSS+DIV主要控制页面布局,Javascript和Jquery主要负责脚本语言。实现的主要功能包括研究生部分中的研究生信息查看模块,研究生选择导师模块,研究生课程选择模块,研究生成绩查看模块,研究生课表查看模块,研究生提交开题报告、中期审核与论文模块,研究生查看培养计划模块与导师部分中的导师选择研究生模块,培养计划制定模块,导师查看研究生信息模块,导师查看研究生成绩模块,所选研究生的开题报告下载与上传模块,所选研究生的中期审核下载与上传模块与所选研究生的论文下载模块等。关键字:研究生教学管理;php;软件工程;CSS+DIVABSTRACTIn the 21st century, with the development of society and the popularization of information technology, computer applications has gone deep into every area of education, the system is developed using php and MySql technology based B / S architecture graduate teaching management system. Thinking combined with the characteristics of teaching management system and software engineering, the use of UML (Unified Modeling Language) tools for designing systems requirements analysis and systems. The system has a strong practicality, efficiency and mentors in improving the efficiency of learning university graduate schools also save a lot of manpower and resources. Inthegraduate teaching management,CSS+DIV mainlycontrol the layout of the page,Javascriptand Jquery are mainly responsible forthe script language.The main functions implemented include graduate section postgraduate view module, students choose mentors module, postgraduate courses selection module, graduate record view module, graduate curriculum view module, students submit the title of the report, interim audit and paper module, students view the training program module mentor and tutor section select postgraduate modules, training planning module, mentor graduate students to see information module, the module tutor view graduate record interim audit download and upload the selected module and postgraduate opening report download and upload module, selected graduate select graduate thesis download module.Key Words:Graduate Teaching Management; php;Software Engineering ;CSS+DIV目 录目 录IV1 引言11.1 研究背景11.2 研究意义11.3 研究现状12 系统分析32.1 可行性分析32.1.1 经济可行性32.1.2 技术可行性32.1.3 操作可行性32.1.4 法律可行性32.2 需求分析42.2.1 模块规划42.2.2 用例图42.3 相关技术112.3.1 CSS+DIV简介112.3.2 JavaScript简介112.3.3 JQuery简介113 总体设计123.1 系统设计123.2 数据库的设计133.2.1 概念结构设计133.2.2 逻辑结构设计174 系统的详细设计与实现194.1 研究生模块194.1.1 登陆界面194.1.2 研究生主界面204.1.3 查看公告214.1.4 查看个人信息224.1.5 查看课表234.1.6 查看成绩244.1.7 查看培养计划254.1.8 提交开题报告264.1.9 提交中期审核274.1.10 提交论文284.1.11 申请导师304.1.12 申请公选课314.1.13 下载中心334.1.14 修改密码344.2 导师模块354.2.1 导师主界面354.2.2 查看公告354.2.3 查看研究生信息364.2.4 选择研究生374.2.5 查看所选研究生成绩394.2.6 发布培养计划404.2.7 下载所选研究生开题报告414.2.8 下载所选研究生中期审核424.2.9 下载所选研究生论文434.2.10 上传所选研究生开题报告434.2.11 上传所选研究生中期审核454.2.12 下载中心464.2.13 修改密码475 测试495.1 概念和意义495.2 测试过程与结果495.2.1 研究生登录测试495.2.2 导师查询研究生信息测试505.2.3 研究生提交论文测试50结 论52参考文献53致 谢54天津职业技术师范大学2014届本科生毕业设计1 引言1.1 研究背景进入21世纪以来,在互联网技术的不断发展条件下,各种社会的企业、政府机构、事业单位、银行都应用了基于B/S结构的网站系统,来实现信息化的管理。这也正是由于计算机技术的飞速发展给我们提供了很好的平台,让我们的工作学习生活都变得异常轻松。信息化已是这个时代不可或缺的主要形式,如今的教育产业也信息化了,不仅方便了学生而且方便了老师,尤其针对更高学历的学生,例如研究生。每个大学校园里都有专门的研究生院院来供充满求学精神的研究生使用,这也导致了大量的研究生聚集在大学校园里。虽然刺激了科学教育的快速发展,但也对大学研究所的管理人员造成了巨大的难关,如何才能系统的、细致的、不出错的保存好管理好如此大量而复杂的数据信息。而对于学校的管理者来说,怎样利用现代信息技术对学校的师生情况进行有效的管理至关重要,所以研究生教学管理系统也就应运而生了。通俗的理解就是学校基于先进IT软件的师生管理模式和高速度、大容量硬件。在现代化的这些研究生与导师管理之中,主要包括研究和导师的管理,其中又分别有部分模块,本系统主要针对上述几个功能模块来设计和实现研究生教学管理系统。1.2 研究意义在互联网高度发达的现今,各种各样的社会组织、政府机构、事业单位、商业公司、银行都纷纷采用信息化的管理模式。基于B/S结构的网站系统正式其中非常典型也非常常用的一种方式。依靠网站系统来完成研究生的信息化管理可以大大的减少管理人员的工作。研究生教学管理软件就是为研究生与导师提供一个双向选择与查询各种信息的管理平台。通过这一平台,能顺利的导入研究生、导师与课程的信息,从而进行一系列合理的选择与安排。使导师对研究生的指导与管理做得更全面、更具体,再通过管理员合理的安排,能够为研究生或导师提供非常良好的便利。开发以网络平台为依托,以计算机技术为基础,以浏览器为终端的现代化研究生教学管理系统,既能够提升研究生的学习效率,又能够提升导师的指导效率,从而间接的增加学校的教学水平,又能够使教学管理更加科学。在“以人为本,人人成才”的现代教学管理理念引领下,一个切合实际、易于操作的研究生教学管理系统能够帮助学校在很大程度上提升教学质量。1.3 研究现状 自从90年代以来,社会各个阶层政府部门,国有企业,私营公司,银行,学校都引入了互联网式的管理方式,设立官网设立内网,以互联网系统来代替传统的管理方式。不仅使管理事务变得高效和简洁,同时也能完成一些靠人工操作难以完成的工作。在现今时代网站式的管理系统具有不可替代的优越性。教学的管理也发生了本质的变化,先前教学管理是学校师生基本信息的管理,但是随着高等教育规模和教学质量需求不断的扩大,研究生结构也变得复杂化而且数量也逐渐庞大,对于传统的教学管理已经无法满足学校的需求,急需一个更加智能的、完善的研究生教学管理方案来解决学校的需求。伴随着计算机科技技术的快速发展,基于网络的教学模式空前盛行,一个完善的基于互联网的研究生教学管理方案能够为研究生的学习与导师的指导提供方便快捷的安排,帮助学校在教学管理上提供便利,广纳生源。现在计算机科学与技术伴随着科技的发展步伐越来越成熟,在各个学校的教育管理中已经不可或缺,因此应用计算机技术的智能化、低成本、高收益、科学高效等特点开发的信息管理系统必然会成为以后学校使用的不二选择。2 系统分析2.1 可行性分析2.1.1 经济可行性系统的经济可行性指的是对组织的经济状况和投资能力进行分析,对系统建设、运行和维护费用进行估算,对系统建成后可能取得的社会及经济效益进行估计。本系统拟采用PHP和MySQL,其在技术上几乎只要投资一点硬件成本,所以该系统在经济上是完全可行的。2.1.2 技术可行性本系统技术要求如下。功能上分为研究生、导师和管理员三大部分。其中研究生的操作是个人信息的查看,导师的选择,课程的选择,课表的查看,培养计划的查看,开题报告、中期审核与论文的提交;导师的操作是研究生的选择,培养计划的提交,课表的查看,开题报告、中期审核的下载与上传,论文的下载。管理员的操作是研究生管理,专业管理,导师管理,课程管理,成绩管理,文档管理,公告管理,排课系统,用户管理。基本的数据流程和处理流程是先对研究生和导师信息进行录入,然后再对它们分类。可以对数据进行增加、删除、修改、排序、查询、导出论文等功能。用户与权限可以分为研究生、导师和管理员,用户可以登陆查询各种信息,导师可以查询研究生各种信息,管理员主要管理研究生、导师系统的各种信息。以上系统技术要求使用DreamWeaver可以满足,它使用的是面向对象、高效率且能够实现B/S模式编程的php语言开发,使用CSS和DIV主要控制页面布局,Javascript和Jquery主要负责脚本语言。因此,本系统的开发在技术上是可行的。2.1.3 操作可行性该系统在操作上很简单的,使用者完全可以没有专业的计算机知识。启动系统后进入用户登陆界面,用户用自己登陆名和密码进入系统操作页面。不同的用户拥有不同的权限,只能浏览和操作相应的模块。用户能对自己拥有权限的功能模块进行相应的操作。例如管理员进入系统:他就可以进入研究生信息管理模块,对系统里的信息进行浏览,添加,删除,修改等操作。2.1.4 法律可行性此人力资源管理系统是本人自主开发的管理系统,是很有实际意义的系统,开发这个系统不同于开发普通的系统软件,即该系统不同于原来已有的现代化的系统,不存在侵权等问题,本系统开发不会侵犯他人、集体或国家利益,不违反国家法律,因此具有法律可行性。2.2 需求分析2.2.1 模块规划该系统主要包括以下功能模块。1) 研究生查看公告:研究生查看系统公告。2) 研究生查看信息:研究生查看自己的个人信息、公告、课表、成绩。3) 研究生选择导师:研究生选择自己的导师且只能选择一个导师。4) 研究生申请公选课:研究生申请自己的公选课。5) 研究生查看培养计划:研究生下载导师上传的培养计划,word导出功能。6) 研究生提交开题报告、中期审核与论文:研究生导入自己的论文开题报告、中期审核与论文,word导入功能。7) 研究生修改密码:研究生修改自己登陆学号的密码。8) 导师查看公告:导师查看系统公告。9) 导师选择研究生:导师选择学生,一个导师可以选择多个学生。10) 导师查看信息:导师查看研究生信息、公告、成绩与课表。11) 导师制定培养计划:导师制定研究生的培养计划,word导入功能。12) 导师下载开题报告、中期审核与论文:导师下载研究生提交的开题报告、中期审核与论文,word导出功能。13) 导师上传开题报告与中期审核:导师上传本组研究生的开题报告与中期审核,word导出功能。14) 导师修改密码:导师修改自己登陆工号的密码。15) 下载中心:下载各种文档模版。2.2.2 用例图每个管理模块可以通过用例图来描述系统的参与者和系统的用例,引用用例的主要目的是确定系统应该具备哪些功能,这些功能是否能够满足系统的需求开发人员与用户协商达成共识的东西,从而有效的帮助开发团队以一种可视化的方式理解观察到的系统功能模型图。用例图可以直观的显示角色用例和用例之间的关系,它定义了系统的功能需求。是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。其中参与者表示用户在系统中所扮演的角色,他们必须是系统部分以外的用例。研究生用例图如图2-1所示。图2-1研究生用例图导师用例图如图2-2所示。图2-2导师用例图用户管理用例图如图2-3所示。图2-3用户管理用例图专业管理用例图如图2-4所示。图2-4专业管理用例图课程管理用例图如图2-5所示。图2-5课程管理用例图导师管理用例图如图2-6所示。图2-6导师管理用例图研究生管理用例图如图2-7所示。图2-7研究生管理用例图公告管理用例图如图2-8所示。图2-8公告管理用例图成绩管理用例图如图2-9所示。图2-9成绩管理用例图文档管理用例图如图2-10所示。图2-10文档管理用例图 2.3 相关技术CSS+DIV主要控制页面布局,Javascript和Jquery主要负责脚本语言。它们也是本系统的关键技术,下面对这些技术进行介绍。2.3.1 CSS+DIV简介 CSS+DIV是WEB的设计标准,是一种网页的布局方法。与传统中通过表格(table)定位布局的方式不一样,它能够实现网页页面表现与内容相分离。提及CSS+DIV组合,还要从XHTML说起。CSS+DIV布局优势有精简代码,减少重构的难度、网页访问速度、SEO优化、浏览器兼容性2.3.2 JavaScript简介JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时它也是一种被广泛运用于客户端Web开发的脚本语言,经常用来给HTML网页添加动态功能,比如响应用户的种种操作。2.3.3 JQuery简介jQuery是一个兼容多浏览器的javascript框架,其核心理念是写得更少,做得更多。jQuery是开放的、免费的,使用MIT许可协议。jQuery的语法设计能够使开发者更加方便快捷,比如选择DOM元素、事件处理、操作文档对象、制作动画效果、使用Ajax等其他功能。3 总体设计3.1 系统设计系统所能够实现的功能,如图3-1所示。在本系统中涉及了研究生、导师和管理员三个功能模块。系统功能图如图3-1所示。图3-1系统功能图3.2 数据库的设计3.2.1 概念结构设计实体间的联系如下图3-2所示。图3-2实体关系图管理员属性图如图3-3所示。图3-3管理员属性图研究生信息属性图如图3-4所示。图3-4研究生信息属性图公告属性图如图3-5所示。图3-5公告属性图研究生与导师互选情况属性图如图3-6所示。图3-6研究生与导师互选情况属性图专业属性图如图3-7所示。图3-7专业属性图课程属性图如图3-8所示。图3-8课程属性图培养计划属性图如图3-9所示。图3-9培养计划属性图公选课属性图如图3-10所示。图3-10公选课属性图必修课属性图如图3-11所示。图3-11必修课属性图课表属性图如图3-12所示。图3-12课表属性图成绩属性图如图3-13所示。图3-13成绩属性图论文属性图如图3-14所示。图3-14论文属性图开题报告属性图如图3-15所示。图3-15开题报告属性图中期审核属性图如图3-16所示。图3-16中期审核属性图3.2.2 逻辑结构设计逻辑结构指的是独立于任何一种数据模型的,因为目前使用的数据库基本上全都是关系数据库,所以需要将E-R图转换为关系模型,接着根据具体DBMS的限制和特点转换为特定的DBMS支持下的数据模型,最后进行优化。下面把以上E-R图转化为关系关系模型模式。关系的数据用下横线标出。管理员信息(帐号,密码)研究生信息(学生学号,密码,姓名,生日,性别,民族,籍贯,电话,邮箱,地址,论文路径,专业)公告(标题,系统时间,公告路径)研究生与导师互选情况(老师工号,学生学号,互选情况)专业(专业号,专业名,学院)课程(课程号,课程名,专业)培养计划(老师工号,标题,培养计划路径)公选课(课程号,课程名,学生学号,成绩)必修课(专业名,课程列表)课表(专业名,星期一第一节课,星期一第二节课,星期一第三节课,星期一第四节课,星期二第一节课,星期二第二节课,星期二第三节课,星期二第四节课,星期三第一节课,星期三第二节课,星期三第三节课,星期三第四节课,星期四第一节课,星期四第二节课,星期四第三节课,星期四第四节课,星期五第一节课,星期五第二节课,星期五第三节课,星期五第四节课)成绩(课程号,课程名,学生学号,成绩)论文(学生学号,标题,论文路径,评价)开题报告(学生学号,老师工号,论文路径,评价)中期审核(学生学号,老师工号,论文路径,评价)4 系统的详细设计与实现这一阶段的目标的根本是确定如何具体地实现所需的系统,也就是说,在这个阶段的设计工作后,应能得出对目标系统的精确描述,从而把这个描述用程序实现出来。下面对本系统实现的各个模块进行详细的设计与实现。4.1 研究生模块4.1.1 登陆界面(1)登陆界面,如下图4-1所示。图4-1 登陆界面(2)登陆界面功能要点研究生在登陆界面输入学生学号与密码并点击学生按钮进入研究生主界面,输入正确则成功进入,输入错误则弹出对话框提示错误并返回登陆界面。(3)登陆界面主要代码functionstudentsubmit()result=formCheck();if(result=true)document.form1.action=php/studentLogin.php;documenr.form1.submit();functionteachersubmit()result=formCheck();if(result=true)document.form1.action=php/teacherLogin.php;document.form1.submit();functionadminsubmit()result=formCheck();if(result=true)document.form1.action=php/adminLogin.php;document.form1.submit();functionformCheck()varusername=document.getElementById(username).value;varpassword=document.getElementById(password).value;if(username=|password=)alert(密码或账号尚未输入);returnfalse;returntrue; 4.1.2 研究生主界面(1)研究生主界面,如下图4-2所示。图4-2研究生主界面(2)研究生主界面功能要点界面左侧有研究生所有功能,中间是显示系统公告标题。4.1.3 查看公告(1) 查看公告界面,如下图4-3所示。图4-3查看公告(2)查看公告功能要点研究生在主界面点击查看首页,进入公告界面,点击公告标题的URL,进入所选公告内容。公告内容由管理员编辑后生成TXT格式后上传到服务器上并将路径导入数据库公告表(notice)中,并且将提交公告的时间上传到表中,从而显示在界面上。(3)查看公告主要代码$title=$_GETtitle; $result=mysql_query(select * from notice where title = .$title.);$array_notice=array();while($array=mysql_fetch_array($result)$array_notice=$array;$filename=txt/.$array_notice2.txt;$fp = fopen ($filename , r);4.1.4 查看个人信息(1)查看个人信息界面,如下图4-4所示。图4-4查看个人信息(2)查看个人信息功能要点研究生在主界面点击查看个人信息,进入该界面。研究生信息从数据库表(student)中导出并显示。系统通过对主键学生学号的判断来提取对应的研究生信息,从而在界面显示。研究生只可查看信息,不可修改或删除。(3)查看个人信息主要代码 $studentid=$_SESSIONstudent;$result=mysql_query(select*fromstudentwherestudentid=.$studentid.);$array_student=array();while($array=mysql_fetch_array($result)$array_student=$array;4.1.5 查看课表(1) 查看课表界面,如下图4-5所示。图4-5查看课表(2)查看课表功能要点研究生在主界面点击查看课表,进入该界面。课表信息从数据库表(schedule)中导出并显示,其中的内容由专业名为主键而决定的,不同的班级有不同的课表。课表的内容都由管理员编辑决定。(3)查看课表主要代码$studentid=$_SESSIONstudent;$result=mysql_query(select*fromschedule,studentwherestudent.class=schedule.classNameandstudentid=.$studentid.);$array_schedule=array();while($array=mysql_fetch_array($result)$array_schedule=$array;4.1.6 查看成绩(1) 查看成绩界面,如下图4-6所示。图4-6查看成绩(2)查看成绩功能要点研究生在主界面点击查看成绩,进入该界面。成绩信息从数据库表performance和public中导出并显示信息。成绩分为公选课成绩与必修课成绩,分别由两个数据库表格中导出,公选课由表public导出,必修课由表performance导出。系统将通过对相对应的主键课程号与学生学号来判定,从而将正确的信息显示在界面上。(3)查看成绩主要代码$name = $_SESSIONname;$result=mysql_query(select studentid from student where name = .$name.);$array=mysql_fetch_array($result);$studentid = $array0;$result=mysql_query(select * from performance where studentId = .$studentid.);$array_performance=array();while($array=mysql_fetch_array($result)$array_performance=$array;$result=mysql_query(select * from public where studentid = .$studentid.);$publicArray=mysql_fetch_array($result);4.1.7 查看培养计划(1) 查看培养计划界面,如下图4-7所示。图4-7查看培养计划(2)查看培养计划功能要点研究生在主界面点击查看培养计划,进入该界面。培养计划信息从数据库表(fosterplan)中导出并显示信息。培养计划内容由导师从下载中心下载培养计划word模版并编辑后上传到服务器上。服务器将路径上传到数据库后,研究生可通过路径下载培养计划。培养计划以老师工号与标题为主键致使只有被对应导师选中的研究生可以查看对应的培养计划。(3)查看培养计划主要代码$studentid=$_SESSIONstudent;$result=mysql_query(select*fromapply,fosterplanwhereapply.studentId=.$studentid.andfosterplan.teacherid=apply.teacherId);$array_develop=array();while($array=mysql_fetch_array($result)$array_develop=$array;4.1.8 提交开题报告(1) 提交开题报告界面,如下图4-8所示。图4-8提交开题报告(2)提交开题报告功能要点研究生在主界面点击提交开题报告,进入该界面。研究生从下载中心下载开题报告模版并进行编辑后将word文件添加进去,然后单击提交开题报告按钮,提交成功后,系统将word文件上传到服务器,并将路径导入到数据库表(startreport)中。(3)提交开题报告主要代码$teacherid=$_SESSIONteacher; $studentName=$_POSTstudentName;$destination;if(is_uploaded_file($_FILESupfiletmp_name)/是否存在文件include(uploadDoc.php); $student_sql=SELECTstudentidFROMstudentwherename=.$studentName.;$rs=mysql_query($student_sql,$conn); $array=mysql_fetch_array($rs);$studentid=$array0; $student_sql=SELECTcount(*)FROMstartreportwherestudentid=.$studentid.;$rs=mysql_query($student_sql,$conn); $array=mysql_fetch_array($rs);$count=$array0; if($count!=0) $starReportUdp=updatestartreportsetteacherid=.$teacherid.,filePath=.$destination.wherestudentid=.$studentid.;、mysql_query($starReportUdp,$conn); else $starReportReg=INSERTINTOstartreport(studentid,teacherid,filePath,evaluate)VALUES(.$studentid.,.$teacherid.,.$destination.,);mysql_query($starReportReg,$conn); 4.1.9 提交中期审核(1) 提交中期审核界面,如下图4-9所示。图4-9提交中期审核(2)提交中期审核功能要点研究生在主界面点击提交中期审核,进入该界面。研究生从下载中心下载中期审核模版并进行编辑后将word文件添加进去,然后单击提交开题中期报告,提交成功后,系统将word文件上传到服务器,并将路径导入到数据库表(middlereport)中。(3)提交中期审核主要代码$studentid=$_SESSIONstudent;$destination;if(is_uploaded_file($_FILESupfiletmp_name)/是否存在文件include(uploadDoc.php);$startreport_sql=SELECTcount(*)FROMstartreportwherestudentid=.$studentid.;$rs=mysql_query($startreport_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count!=0)$middlereport_sql=SELECTcount(*)FROMmiddlereportwherestudentid=.$studentid.;$rs=mysql_query($middlereport_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count!=0)$middlereportUdp=updatemiddlereportsetfilePath=.$destination.wherestudentid=.$studentid.;mysql_query($middlereportUdp,$conn);else$middlereportReg=INSERTINTOmiddlereport(studentid,teacherid,filePath,evaluate)VALUES(.$studentid.,.$destination.,);mysql_query($middlereportReg,$conn);echoalert(提交成功!);history.back(); else echoalert(开题报告尚未提交);history.back();4.1.10 提交论文(1) 提交论文界面,如下图4-10所示。图4-10提交论文(2)提交论文功能要点研究生在主界面点击查看提交论文,进入该界面。研究生将Word文件添加进去,然后单击上传论文按钮,提交成功后,系统将Word文件生成到服务器,并将路径导入到数据库表(thesis)中。(3)提交论文主要代码$title=$_POSTtitle;session_start();$studentid=$_SESSIONstudent;$destination;if(is_uploaded_file($_FILESupfiletmp_name)/是否存在文件include(uploadDoc.php);$middlereport_sql=SELECTcount(*)FROMmiddlereportwherestudentid=.$studentid.;$rs=mysql_query($middlereport_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count=0)echoalert(中期报告尚未提交);history.back();else$thesis_sql=SELECTcount(*)FROMthesiswherestudentid=.$studentid.;$rs=mysql_query($thesis_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count!=0)$thesisUdp=updatethesissettitle=.$title.,filePath=.$destination.wherestudentid=.$studentid.;mysql_query($thesisUdp,$conn);else$thesisReg=INSERTINTOthesis(studentid,title,filePath,evaluate)VALUES(.$studentid.,.$title.,.$destination.,);mysql_query($thesisReg,$conn);4.1.11 申请导师(1) 申请导师界面,如下图4-11所示。图4-11申请导师(2)申请导师功能要点研究生在主界面点击申请导师,进入该界面。在下拉列表中选择想选的导师,选择后点击提交按钮,如果该研究生已经选择过该导师,系统将提显示该生已选择过这个导师,否则将提交成功。将在研究生与导师互选情况(apply)表中,将相对的teacherid与studentid的choised值改为false,即表示等待老师选择研究生。如果研究生已选择过导师并被导师选中,点击申请导师后,将显示“你已被导师选中,请不要闹”。(3)申请导师主要代码$mentorName=$_POSTmentorName;$studentid=$_SESSIONstudent;$teacher_sql=SELECTusernameFROMteacherwherename=.$mentorName.;$rs=mysql_query($teacher_sql,$conn);$array=mysql_fetch_array($rs);$teacherid=$array0;$mentor_sql=SELECTcount(*)FROMapplywhereteacherId=.$teacherid.andstudentid=.$studentid.;$rs=mysql_query($mentor_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count!=0)echoalert(你已申请过此老师作为你的导师!);history.back();else$mentorReg=INSERTINTOapply(teacherId,studentId,choised)VALUES(.$teacherid.,.$studentid.,false);mysql_query($mentorReg,$conn);echoalert(申请成功!);echowindow.location.href=http:/localhost/postgraduate/php/applyMentor.php;4.1.12 申请公选课(1) 申请公选课界面,如下图4-12所示。图4-12申请公选课(2)申请公选课功能要点研究生在主界面点击申请公选课,进入该界面。研究生在下拉列表里选择想选的课程,系统将判断研究生所选的课程是否是必修课,如果是的话数据将无法上传到数据库表中并返回。否则系统将提示“公选课只能选择一次,请慎重选择”。研究生点击确定后数据将上传到数据库表(public)中,并且选课成功,每个学生可以选一节公选课。选课成功后再点击申请公选课将显示“你已申请过公选课”。(3)申请公选课主要代码$publicSubject=$_POSTpublicSubject;$name=$_SESSIONname;$subject_sql=SELECTsubjectIdFROMsubjectwheresubjectName=.$publicSubject.;$rs=mysql_query($subject_sql,$conn);$array=mysql_fetch_array($rs);$subjectId=$array0;$student_sql=SELECT*FROMstudentwherename=.$name.;$rs=mysql_query($student_sql,$conn);$array=mysql_fetch_array($rs);$studentinfo=$array;$plan_sql=SELECTscheduleListFROMplanwhereclassName=.$studentinfoclass.;$rs=mysql_query($plan_sql,$conn);$array=mysql_fetch_array($rs);$scheduleList=$array0;$scheduleList=explode(;,$scheduleList);if(in_array($subjectId,$scheduleList)echoalert(此课程为你的必修课,请重新输入!);history.back();else$publicReg=INSERTINTOpublic(subjectId,subjectName,studentid,performance)VALUES(.$subjectId.,.$publicSubject.,.$studentinfostudentid.,);mysql_query($publicReg,$conn);echoalert(添加成功!);echowindow.location.href=http:/localhost/postgraduate/php/applyPublic.php;4.1.13 下载中心(1) 下载中心界面,如下图4-13所示。图4-13下载中心(2)下载中心功能要点研究生在主界面点击下载中心,进入该界面。有三个word文档模版可供下载,点击文档URL进行下载。这些文档都是存在于服务器上的,无需使用数据库。(3)下载中心主要代码该功能没用使用数据库,只在页面上编写代码。4.1.14 修改密码(1) 修改密码界面,如下图4-14所示。图4-14修改密码(2)修改密码功能要点研究生在主界面点击修改密码,进入该界面。研究生输入原密码与新密码后,点击更改密码按钮,数据将替换数据库表(student)中原有的数据。(3)修改妈妈主要代码$oldpassword=$_POSToldpassword;$newpassword=$_POSTnewpassword;$studentid=$_SESSIONstudent;$student_sql=SELECTcount(*)FROMstudentwherestudentid=.$studentid.andpassword=.$oldpassword.;$rs=mysql_query($student_sql,$conn);$array=mysql_fetch_array($rs);$count=$array0;if($count=0)echoalert(原密码错误!请重新输入);history.back();else$studentUdp=updatestudentsetpassword=.$newpassword.wherestudentid=.$studentid.;mysql_query($studentUdp,$conn);echoalert(修改成功!);echowindow.location.href=http:/localhost/postgraduate/php/student.php;4.2 导师模块4.2.1 导师主界面(1) 导师主界面,如下图4-15所示。图4-15导师主界面(2)导师主界面功能要点导师在登陆界面输入老师工号与密码并点击导师按钮进入导师主界面,输入正确则成功进入,输入错误则弹出对话框提示错误并返回登陆界面。进入导师主界面后,左侧有导师所有功能,中间是显示系统公告标题。4.2.2 查看公告(1) 查看公告界面,如下图4-16所示。图4-16查看公告(2)查看公告功能要点导师在主界面点击查看首页,进入公告界面。点击公告标题URL,进入所选公告内容。公告内容由
展开阅读全文