还剩18页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
毕业设计(论文)论文题目学生选课管理系统系别计算机与信息技术系专业班级学生姓名指导教师目录TOC\o1-2\h\z\uHYPERLINK\l_Toc482897346摘要1HYPERLINK\l_Toc482897347引言2HYPERLINK\l_Toc4828973481绪论2HYPERLINK\l_Toc
4828973491.1研究背景2HYPERLINK\l_Toc
4828973501.2运行环境2HYPERLINK\l_Toc4828973512需求分析2HYPERLINK\l_Toc
4828973522.1性能需求2HYPERLINK\l_Toc
4828973532.2功能需求3HYPERLINK\l_Toc
4828973542.3流程分析4HYPERLINK\l_Toc4828973553总体设计4HYPERLINK\l_Toc
4828973563.1系统目标4HYPERLINK\l_Toc
4828973573.2功能设计5HYPERLINK\l_Toc4828973584详细设计9HYPERLINK\l_Toc
4828973594.1php与mysql数据库连接9HYPERLINK\l_Toc
4828973604.2模块实现11HYPERLINK\l_Toc
4828973614.3学生选课管理模块详细设计16HYPERLINK\l_Toc4828973625编程工具的选择17HYPERLINK\l_Toc482897363参考文献18HYPERLINK\l_Toc482897364致谢19学生选课管理系统【摘要】随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视,是一个学校不可缺少的部分,学生选课系统就是为了管理好选课信息而设计的学生选课系统的将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况系统实现了对课程的基本信息和学生选课、学生和教师用户进行管理系统对学生角色提供个人信息查看、选课管理以及其他功能;对教师提供查看自己所担任课程的课表和选该门课程的学生信息;提供给管理员以下功能查看所有课程、学生、教师的信息并可以对它们进行管理(添加、编辑、删除),以及实现新闻的发布并修改【关键词】PHPWampServer数据库教务系统引言学校是一个与学生信息安全密切的重要机构,在高度信息化的今天,学生对学校管理的要求也越来越高为了方便学生查询自己的选课信息,也为了学校更好的了解学生选课信息,学校需要一个学生选课信息管理系统 学生选课管理系统在开发时注意到使用专业术语会对今后的系统使用者造成不便,故所有相关词汇使用了简洁并通俗易懂的词汇,系统使用者不会出现对此系统词汇看不懂的问题,故而在此对系统及文件使用词汇不做定义1绪论
1.1研究背景伴随着信息化时代的到来,信息管理技术已经深入到了我们工作和生活的各个方面对于国内高校而言,随着招生规模的持续增加,提升高校管理效率已经迫在眉睫,这也就迫使了高校逐渐引入各类信息管理技术从高校教务管理这一角度看,从高校实行学分制开始,选课工作就成为教务管理中一项重要内容,同时也是高校管理工作的核心内容传统的人工选课,不仅耗费大量的时间和精力,同时错误率也比较高,选课效率相对比较低下因此,必须要采取一定的措施来实现科学、合理地选课本文正是基于此背景,以高校学生选课问题为研究对象,基于B/S架构、以C#作为开发,展开伴随着信息化时代的到来,信息管理技术已经深入到了我们工作和生活的各个方面对于国内高校而言,随着招生规模的持续增加,提升高校管理效率已经迫在眉睫,这也就迫使了高校逐渐引入各类信息管理技术从高校教务管理这一角度看,从高校实行学分制开始,选课工作就成为教务管理中一项重要内容,同时也是高校管理工作的核心内容传统的人工选课,不仅耗费大量的时间和精力,同时错误率也比较高,选课效率相对比较低下因此,必须要采取一定的措施来实现科学、合理地选课本文正是基于此前提,以高校学生选课问题为研究对象,基于B/S架构、以C#作为开发语言,以WampServer作为开发工具,以SQLServer2005作为数据库管理系统,开发设计出了一套高校学生选课系统本文首先简要地阐述了选题背景,归纳了关于学生选课系统的研究现状,给出了论文的主要研究方向和论文框架;其次,进行了系统需求分析,基于系统管理员、教师、学生这三类用户角色,阐述了其所需的功能需求,之后还分析了系统的性能需求和安全性需求;再次,针对系统管理员、教师和学生这三类用户角色,结合前文的需求分析,设计了不同用户角色的功能模块,通过功能结构图与顺序图的形式来展示;最后,通过采用界面截图的形式来展现学生选课系统的实现结果,来验证系统是否满足设计要求,进一步采用黑盒测试的方式来验证系统的可靠性
1.2运行环境操作系统方面,虽然现在Linux的发展速度非常的快,但是对于大多数的使用者来说,操作显然没有微软的WINDOWS那么的流行和简单化所以我决定该教务管理系统将运行在Windows系统下面2需求分析
2.1性能需求随着无纸化办公的普遍实现,信息的自动处理以及网络式的信息交互方式已经被人们广泛应用让计算机来管理学生的信息是现在各个高校都在积极进行的工作之一,也是高校管理工作的重要内容之一网上选课与传统的选课方式相比更加节约资源,增加了学生选课自主权学生选课系统作为一种现代化的教学技术,以越来越受到人们的重视,是一个学校不可缺少的部分,学生选课系统就是为了管理好选课信息而设计的学生选课系统将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况
2.2功能需求与传统的选课方式相比,网上选课系统利用局域网为学生选课带来了便利学生在学校的公共机房或者宿舍的个人电脑上通过网络来选课,只要选课还没有截止,学生能够灵活的修改自己的选课情况,大大提高了学校选课工作的效率教务处的教师则通过选课系统的管理员子系统来管理学生的选课情况,使得学生选课工作达到系统化和自动化网上选课系统针对在校学生和教师使用从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式传统的教学模式(学生按照学校安排好的课程上课)已经不能适应新型的教学模式,如果仍然通过纸上的方式选课,一方面浪费了大量的人力物力资源,另一方面浪费时间以及会在人为的统计汇总过程中出现可避免的差错等情况随着高校人数的增多,上述弊端会越来越多的暴露出来,如果利用网络进行选课,学生只要在计算机前输入自己的个人选课信息即可完成教务部门原来几倍的作业量从教学的角度来说,教师提出代课申请完成课程发布的工作更加容易,得到教学的信息更加快捷,因此通过网上选课系统可以大幅度的减少教师的工作量,方便了教学工作
2.3流程分析首先系统用户使用账号和密码等数据就行登录,此时数据流由界面输入流向数据库进行逻辑验证,如果找到该数据记录则进行页面跳转,跳转至系统首页,系统用户在系统内进行数据操作,此时数据流的有效数据流流向数据库中心执行相应的数据sql语句,完成增删改查等操作,最后数据流由数据库中心流向系统界面,进行结果显示图2-1所示为数据流图用户身份验证用户功能选择密码是否正确用户登陆正确用户读数据出错处理存数据图2-1数据流图(1层图)流程分析首先以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统用户管理、选课公告管理、选课管理、教师信息管理、班级信息管理、学生信息管理、系统管理等功能以学生的身份登录系统可以使用个人资料管理、在线选课管理等操作以教师的身份登录系统可以进行个人资料管理、课程信息管理、选课公告管理、选课方案管理、资料下载管理、在线答疑等操作3总体设计
3.1系统目标学生选课系统就是为了适应这种要求而设计的集信息的显示、输入、修改、删除、查询等各种处理为一体,信息维护起来非常方便大大提高了课程信息管理、学生选课、查询成绩的工作效率,为学校教务处带来很大的便利,本系统的亮点在于界面简明又不失美感,各个功能对应的页面模块和按钮简单明了,用户只需要经过简单地试用就可以熟练上手,本系统符合人机交互的“所见即所得”原则,如图3-1所示提示框标注选中形状然后开始键入将框的大小调整到所需尺寸移动控制手柄将指针对准要标注的对象发布课程信息课程信息在线选课成绩信息课程成绩设定YES教师学生开始结束信息查询教师选课信息学生图3-1手工业务流程手工业务流程图分析教师先发布课程信息,然后学生进行选课,选择相应的课程,教师可以查看选择该课程的所有学生,为该学生的课程设置成绩信息,最后由学生登录系统查询该课程的成绩分数
3.2功能设计本系统使用的角色主要有系统管理员,教师用户、学生用户,首先以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统用户管理(修改密码、管理员用户添加、删除、修改)、选课公告管理、选课方案管理、教师信息管理(教师信息添加、删除、修改)、班级信息管理(班级信息添加、删除、修改)、学生信息管理(学生信息添加、删除、修改)、课程表管理(课程表添加、删除、修改)、系统管理(数据备份)等功能以学生的身份登录系统可以使用个人资料管理、在线选课管理(在线选课、已选课程查看、课程成绩查询)、选课公告查看等操作以教师的身份登录系统可以进行个人资料管理、课程信息管理(课程信息添加、删除、修改、课程成绩设定)、选课公告管理(选课公告添加、删除、修改)、选课方案管理(选课方案添加、删除、修改)等操作同时可以通过关键字搜索可以搜索相应的信息,打印各种详细信息,导出各类信息列表至excel中
3.3数据库设计系统的采用mysql数据库管理员表主要存储了管理员信息,只有在这个表中存在的用户才能登录到管理员界面管理员信息表的设计如下表所示表3-1allusers表序号字段名称字段类型大小允许为空最大长度备注1idInt410 2username150255 3pwd150255 4cx150255 5addtimeDateTime819 表3-2jiaoshixinxi表序号字段名称字段类型大小允许为空最大长度备注1idInt4102gonghao1502553xingming1502554mima1502555chushengnianyue1502556shenfenzheng2552557xingbie1502558zhicheng1502559zhaopian15025510zhujiaokecheng15025511dianhua15025512beizhu25525513addtimeDateTime819表3-3kechengxinxi表序号字段名称字段类型大小允许为空最大长度备注1idInt4102kechengbianhao1502553kechengmingcheng2552554xuefen1502555xueshi1502556kexuanrenshu1502557renkejiaoshi1502558beizhu2552559addtimeDateTime81910skdd255255表3-4xuankejilu表序号字段名称字段类型大小最大长度备注1idInt4102kechengbianhao1502553kechengmingcheng2552554xuefen1502555xueshi1502556renkejiaoshi1502557xuankeren1502558chengji1502559pingyu25525510beizhu25525511addtimeDateTime819表3-5xuankeshijian表序号字段名称字段类型大小最大长度备注1IDInt4102kssj2552553jssj2552554addtimeDateTime8194详细设计
4.1数据库模型数据库模型图主要是对数据库表进行设计的一个概念模型图,从图13数据库模型图可以了解到表的关联关系和要进行设计的表所需要的字段,开发人员可以通过该模型图进行设计数据库概念模型的设计是为了将现实世界信息进行抽象,实现信息世界的建模,是进行数据库设计的有力工具数据库概念模型设计可通过E-R图来描述现实世界的概念模型本系统的E-R图表现了系统中各个实体之间的联系
4.2数据库表设计经过前期的需求分析、可执行分析、数据流分析等各个流程分析,结合软件工程的高内聚、低耦合规则,并考虑到以后的程序功能扩展数据库结构设计要求根据数据字典、使用的数据库管理系统以及系统开发工具设计出数据库以及各个数据表的结构系统的采用mysql数据库管理员表主要存储了管理员信息,只有在这个表中存在的用户才能登录到管理员界面
4.1php与mysql数据库连接
(1)开始来介绍一下web数据库架构如4-1图所示123654图4-1web数据库的架构从web系统查询数据的根本的查询步骤Step1:进行检查并且过滤来自用户的系统数据;Step2:成立起一个合适的数据库进行连接;Step3:进行查询系统数据库;Step4:获得查询的结构;Step5:把查询的结果展示给用户
(2)本款系统我使用了apache作为开发环境,它是一个将PHP与Mysql综合一起的研发环境,因此在服务器打开以后,进行连接数据库的方法比较的简洁.可以使用以下的语句php$conn=mysql_connectlocalhostrootpassword;$result=mysql_db_queryDatabaseSELECT*FROM`info`$conn;//获取查询结果$row=mysql_fetch_row$result;echofontface=verdana;echotableborder=1cellpadding=1cellspacing=2;//显示字段名称echo/btr/b;for$i=0;$imysql_num_fields$result;$i++{echotdbgcolor=#000F00b.mysql_field_name$result$i;echo/b/td/b;}echo/tr/b;//定位到第一条记录mysql_data_seek$result0;//循环取出记录while$row=mysql_fetch_row$result{echotr/b;for$i=0;$imysql_num_fields$result;$i++{echotdbgcolor=#00FF00;echo$row[$i];echo/td;}echo/tr/b;}echo/table/b;echo/font;//释放资源mysql_free_result$result;//关闭连接mysql_close$conn;
4.
1.1用户管理模块功能添加用户修改用户密码删除用户修改用户资料
4.
1.2用户管理模块输入界面设计在本模块中,首先以管理员的身份登录,经过验证后可以对读者进行添加或删除操作stringqxsdg_userid=sle_
1.textg_password=sle_
2.textselect权限姓名锁定into:qx:g_username:sdfrom用户where编号=:g_useridand密码=:g_password;ifsqlca.sqlcode0thenmessagebox编号或密码错误returnendififsd=已锁thenmessagebox该帐户已锁,请与管理员联系returnendifsle_
1.text=sle_
2.text=ifqx=管理员thenw_ck.ChangeMenum_mainelsew_ck.ChangeMenum_main_clientendifw_ck.title=你好:+g_usernamecloseparent
4.
1.3系统管理模块输出界面设计本模块中的输出界面有多个,一个为当管理员输入密码不正确时,提示输入密码不正确!,一个为当密码为空时,提示密码不能为空!在添加用户的过程中,将会有如下的输出用户存在时提示该用户已经存在!,用户名为空时提示用户名不能为空!
4.
1.4用户管理模块数据结构描述管理员进入此模块后,可以进行添加用户和修改,需要一个后台信息表,为了实现系统管理模块的功能,需要用到“用户”信息表
4.
1.5用户管理模块流程管理员进入此模块后,可以选择两个子模块添加用户和删除用户添加用户可以实现新读者的添加,删除用户可以实现用户的删除
4.2模块实现
4.
2.1登录模块一个系统最基本的功能就是登录功能,本系统可以进行网站登录的角色有管理员、教师用户、学生用户,用户实现系统登录,首先进入登录页,输入用户名和密码,然后提交至服务端进行数据库数据验证,通过php逻辑代码判断数据库是否存在用户输入的这一个记录,如果存在,则进入管理员管理界面,登录成功,进入主页,并把用户对象存放在session中,如果不存在这样一条记录,则返回登录界面系统登录的运行效果如图4-2图4-2系统登录运行界面登录关键代码如下phprequire_onceinclude/config.inc.php;//echomd5111;if$_SESSION[user]{echoscript;echowindow.location.href=index.php;;echo/script;}$msg=;if$_POST{ifisset$_POST[username]!empty$_POST[username]strlen$_POST[username]128isset$_POST[password]!empty$_POST[password]strlen$_POST[password]128{$username=mysql_real_escape_string$_POST[username];$password=mysql_real_escape_string$_POST[password];$sql=SELECT*FROMm_adminWHEREstatus=1ANDusername=.$username.ANDpassword=.md5$password.;$res=mysql_query$sql;$res=mysql_fetch_assoc$res;if!$res{$msg=账号或者密码错误;}else{$_SESSION[user]=$res;echoscript;echowindow.location.href=index.php;;echo/script;}}else{$msg=表单非法;}}
4.
2.2修改密码模块系统所有用户可以对自己的密码和管理员用户的密码进行修改修改密码是经过跟数据库的原来的密码字段的数据进行判断,如果输入两次的新密码一致,则更新密码这属性对应的一条数据,添加删除管理员实现的过程主要是将填写的数据写入数据库中即可修改密码界面如图4-3所示图4-3修改密码界面修改密码关键代码//修改密码需要通过js代码进行条件约束,通过多个if语句完成scriptfunctioncheck{ifdocument.form
1.ymm.value=={alert请输入原密码;document.form
1.ymm.focus;returnfalse;}ifdocument.form
1.xmm
1.value=={alert请输入新密码;document.form
1.xmm
1.focus;returnfalse;}ifdocument.form
1.xmm
1.value=={alert请输入确认密码;document.form
1.xmm
1.focus;returnfalse;}ifdocument.form
1.xmm
1.value!=document.form
1.xmm
1.value{alert对不起,两次密码不一至,请重新输入;document.form
1.xmm
1.value=;document.form
1.xmm
1.value=;document.form
1.xmm
1.focus;returnfalse;}}/script
4.
2.3学生教师信息管理模块如何处理庞大的学生个人资料信息与管理,它是基于我们学生选课系统的一个大数据处理简单的说就是我们教师通过管理员端口进去检索学生个人的生日,学号,班级,性别等信息进行筛选某一位学生的信息通过我们设定的C语言设定来添加,删除或者更改学生的信息从而达到更加便捷的对于学生的管理学生教师信息管理的界面如图4-4所示图4-4学生教师信息管理界面
4.
2.4课程班级信息管理模块面对课程、班级等数据,通过计算机化的管理这些信息,对其添加、删除、修改,主要是在sql语句的基础上对数据库进行增删改查操作,同时能进行课程班级信息详细信息的打印和课程班级信息列表导出至excel表课程信息管理的界面如图4-5所示图4-5课程信息管理界面
4.3学生选课管理模块详细设计
4.
3.1选课时间设置模块管理员可以通过设置选课的是时间段,在这个时间段内学生是无法进行选课操作的,在这个时间段外才能进行选课设置选课时间段关键代码trtdcolspan=2divalign=center选课时间设置/div/td/trtrtd起始时间/tdtdinputname=kssjtype=textid=kssjvalue=phpreadzdxuankeshijiankssjid1;onclick=fPopCalendareventthisthis/inputname=addnewtype=hiddenid=addnewvalue=1/td/trtrtd截束时间/tdtdinputname=jssjtype=textid=jssjvalue=phpreadzdxuankeshijianjssjid1;onclick=fPopCalendareventthisthis//td/trtrtdinputtype=submitname=Submitvalue=确定onClick=returncheck//tdtdinputtype=resetname=Submit2value=重置//td/tr5编程工具的选择WampServer是一款由法国人开发的ApacheWeb服务器、PHP解释器http://baike.baidu.com/item/%E8%A7%A3%E9%87%8A%E5%99%A8\t_blank以及MySQL数据库的整合软件包免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发在windows下将Apache+PHP+Mysql集成环境,拥有简单的图形和菜单安装和配置环境PHP扩展、Apache模块,开启/关闭鼠标点点就搞定,再也不用亲自去修改配置文件了,WAMPhttp://baike.baidu.com/item/WAMP\t_blank它会去做再也不用到处询问php的安装问题了,wampserver一切都搞定了他有如下的特点
1、支持中文语言,一键安装,省时省力;任何人都可以轻松搭建;
2、集成Apache/MySQL/PHP/PhpMyadmin;支持PHP扩展、Apache的mod_rewrit;
3、一键启动、重启、停止所有服务,一键切换到离线状态等等图6-1WampServer界面参考文献
[1]林旺/张晓坤.深入浅出HTML与CSS、XHTM[M].东南大学出版社
2006.78-158
[2]尹志忠/侯妍.CSS权威指南[M].中国电力出版社
2008.65-108
[3]杨晓云.Mysql5权威指南[M].人民邮电出版社
2006.224-444
[4]刘秋菊.Web编程技术动态网页设计[M].北京师范大学出版社
[5]朱涛江.PHP与Mysql程序设计[M].人民邮电出版社
2011.246-356
[6]刘彦博.PHP基础教程[M].人民邮电出版社
2011.1-405致谢本设计在邱益维老师的悉心指导和严格要求下业已完成,从课题选择、方案论证到具体设计和调试,无不凝聚着老师的心血和汗水,在三年的专科学习和生活期间,也始终感受着导师的精心指导和无私的关怀,我受益匪浅在此向老师表示深深的感谢和崇高的敬意不积跬步何以至千里,本设计能够顺利的完成,也归功于各位任课老师的认真负责,使我能够很好的掌握和运用专业知识,并在设计中得以体现正是有了他们的悉心帮助和支持,才使我的毕业论文工作顺利完成,在此向浙江长征职业技术学院,计信系系的全体老师表示由衷的谢意感谢他们三年来的辛勤栽培感谢三年来计信系所有的任课老师,和14级计算机信息管理班与我一起走完这条路的同学们各功能模块登陆检验数据库用户浏览器mysql服务器php引擎apache服务器i。