ImageVerifierCode 换一换
格式:DOC , 页数:33 ,大小:4.95MB ,
资源ID:2369205      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-2369205.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于PHP MySql的学生选课系统的设计与实现-计算机科学与技术本科生毕业设计.doc)为本站会员(为人民服务)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

基于PHP MySql的学生选课系统的设计与实现-计算机科学与技术本科生毕业设计.doc

1、基于 PHP+MySql 的学生选课系统的设计与实现1中文摘要针对高等院校在校学生众多,使用传统的选课方式效率低下,并且课程安排,地点安排,学生选课等过程中非常容易出错,造成课程时间冲突或者地点冲突,同时,教务员对选课的统计也十分麻烦,所消耗的人力巨大。所以,借助先进的的互联网技术,按需开发网络选课系统。本系统属于 web 应用,前台采用前端框架 bootstrap,后台采用 php 的 CodeIgniter框架,数据库采用 MySql,服务器软件使用 Apache。管理员通过管理员操作平台对学校课室,学生信息,课程,班级等进行在线管理;学生通过学生操作平台进行在线选课;教师通过教师操作平台

2、查看课表,已选自己课程的学生名单。通过在线操作,减少手工操作带来的失误,同时便于管理员对数据进行统计。关键词:选课系统,PHP,MySql,bootstrap,CodeIgniter,Apache基于 PHP+MySql 的学生选课系统的设计与实现2AbstractFor many students of universities,it is inefficient to select course with traditional way.For the arrangement of time and location,it is easy to make mistake when stud

3、ents select course,and the senate staff are put to trouble when they collect statistics.The traditional way to select course may cost too much.So,with the advanced internet technology,we are able to develop a network system for selecting course according to the need.This system is a web application.

4、We use the bootstrap to develope the front,and Codeigniter,a frame of PHP for the backstage,and we choose MySql for the database and the apache for server software .The admins of this system are able to manage all the informations of admins,teachers,students,courses,classroom and so on.Students have

5、 the right to select course,and teachers can know the curriculum of himself.Through online operations,it will play an important role in reducing errors caused by manual operation,and it make collecting statistics more convenient.Key words: courseselection system,PHP,MySql,bootstrap,CodeIgniter,Apach

6、e基于 PHP+MySql 的学生选课系统的设计与实现3目录中文摘要 .1Abstract2目录 .3第 1 章 引言 .51.1 引言 5第 2 章 系统功能分析 .52.1 系统介绍 52.2 系统面向的用户群体 52.3 系统功能需求 52.4 系统非功能性需求 62.5 系统开发环境 7第 3 章 可行性分析 .73.1 技术可行性 73.2 时间、硬件设备可行性 7第 4 章 系统工具介绍 .74.1 HTML 74.2 DIV+CSS.84.2 Apache .84.3 PHP 84.4 MySql.84.5 bootstrap.94.6 CodeIgniter 9第 5 章 数据

7、库设计 .95.1 数据库命名规范 95.2 数据库逻辑设计 95.3 数据库物理设计 145.3.1 数据库表总汇 .14第 6 章 系统结构设计 .19基于 PHP+MySql 的学生选课系统的设计与实现46.1 系统总体结构图 196.2 约束条件设计 19第 7 章 系统界面设计 .197.1 登陆页面 197.2 管理员模块界面 207.3 教师模块界面 257.4 学生模块界面 .26第 8 章 编码 .298.1 系统软件架构模式 298.2 CodeIgniter 框架 .298.3 模型设计 298.4 视图 308.5 控制器设计 31参考文献 .32致谢 .33基于 PH

8、P+MySql 的学生选课系统的设计与实现5第 1 章 引言1.1 引言随着计算机科学技术的不断发展,计算机科学强大的计算功能已经让人们深刻认识到,计算机已经进入人类社会的各个领域,并且发挥着越来越重要的作用。它的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。高等院校作为一种信息资源的集散地,更是作为重要的社会人才培养基地,学生和课程繁多,计算机成为高校教学管理中不可或缺的工具。我国高校实习学分制,允许学生

9、自由选课,而学生选课,管理员对课程管理等相互制约因素大,业务流程复杂,工作量很大。传统的信息管理方式主要是基于表格,文本的纸质手工处理,对于选课情况的统计也是基于人工的检查,人工计算学生选课权限,选课代号,数据信息的处理量特别大,而且由于限制条件太多,业务流程比较复杂,容易出错,而且数据繁多,查找困难。利用计算机互联网技术对信息进行管理是时代的趋势。国外的教学软件发展时间较早,相对于国内来说比较成熟。美国威斯康星大学在1892 年最初提出“远程教育”这个名词,远程教育就是通过先进的互联网技术,实现资源共享,资源管理等,学生在线选课系统也是其中的一小部分。学生选课系统为用户提供充分的信息管理和方

10、便查询功能,能够为老师,学生和教务管理员提供很大的方便,避免传统选课效率低、易出错、更新维护困难的缺点。随着互联网的普及,网上选课已不再是神话,相信会有更多的用户对网上选课改变认识。第 2 章 系统功能分析2.1 系统介绍本系统定位于高等院校,用户群体为高等院校在校学生、教师和教务管理员。系统包含三个模块,分别是管理员模块,教师模块,学生模块。2.2 系统面向的用户群体本系统定位于高等院校,用户群体为高等院校在校学生、教师和教务管理员。2.3 系统功能需求2.3.1 管理员模块基于 PHP+MySql 的学生选课系统的设计与实现6表 2-1 系统管理员模块功能表编号 功能名称 功能说明1 资讯

11、管理 添加新资讯,查看、修改、删除已发表的资讯2 专业课程管理 添加课程,查看、修改、删除已添加的课程,并且可以添加对应课程的班级3 班级管理 修改、删除已添加班级信息4 学生账号管理 添加学生信息,查看、修改、删除学生信息5 教师账号管理 添加教师信息,查看、修改、删除教师信息6 管理员账号管理 添加管理员信息,查看、修改、删除管理员信息7 课室管理 添加课室,查看、修改、删除课室信息8 专业管理 添加专业,查看、修改、删除专业信息9 修改密码 修改当前登录用户的密码2.3.2 教师模块表 2-2 系统教师模块功能表编号 功能名称 功能说明1 资讯 查看资讯2 教师课表 查看当前登录教师的课

12、表信息3 修改密码 修改当前登录用户的密码2.3.3 学生模块表 2-3 系统学生模块功能表编号 功能名称 功能说明1 资讯 查看资讯2 本专业选课 选择本专业课程或者退选已选课程3 课表查询 查看课表4 修改密码 修改当前登录用户的密码2.4 系统非功能性需求界面:简洁,易用,美观,大气,一定兼容性。环境:服务器环境:windows+Apache+PHP+MySql。质量:易用性,稳定性,可拓展性。 2.5 系统开发环境前端页面开发环境用 dreamweaver,它是是一个可视化的网页设计和网站管理工具,基于 PHP+MySql 的学生选课系统的设计与实现7支持最新的 web 技术,例如检查

13、 HTML,HTML 的格式控制,图像编辑,ftp,可视化网页编程等。PHP 开发环境用的是 Zend Studio,它是专业的开发人员使用的一套 php 集成开发环境。 Zend Studio 具有专业和企业开发者开发、配置、调试和管理关键商务 PHP 应用的易使用性、可伸缩性、可靠性和扩展性。数据库管理工具使用的是 Navicat for MySQL。Navicate for mysql 为 mysql 数据库管理,开发和维护提供了强大的图形界面。可以连接任何本机或者远程的 mysql 服务器,支持大部分的功能,比如表,视图,函数,事件或过程等。它主要的功能包括 sql创建工具,编辑器,数

14、据模型工具,命令行工具,数据传输,数据同步,导入导出功能,报表功能能等。第 3 章 可行性分析3.1 技术可行性我在对计算机的学习过程中,很好地掌握了计算机的基础知识,并且能熟练地使用PHP+Mysql 开发中小型网站。对系统的数据库设计,能够按照需求提取系统中的实体,建立 E-R 图,数据库服务器环境搭建并且创建数据库。系统分析与设计上,非常清楚该选课系统的需求,通过绘制系统总体结构图,更加直观地发现整个系统如何一步一步地实现,并且跟踪整个开发进度,把握开发的时间成本。开发工具上,该选课系统是属于 web应用项目,有过 web 项目的开发经验,对于前端,后台,数据库的选择都有直观的认识,保证

15、编码的过程中不会出现大问题。对于系统的后期维护上,由于采用的开发中选择互联网中应用开发中被广泛应用的 MVC 思想开发,而且工具选择上采用成熟的框架进行敏捷开发,对系统的修改扩展都可以很容易地实现。因此,该学生选课系统的实现在技术上是可行的。3.2 时间、硬件设备可行性该选课系统的开发耗时大概一个月左右,所以时间很充分。硬件设备上,开发过程中使用自己的计算机,可以在自己的机子上搭建 web 服务器跟数据库服务器环境,编码测试等操作都可以实现。系统完成开发之后,可以将系统部署到专用的服务器上,专用服务器是托管至机房,有专门的人负责管理,保证系统 7*24 小时的运行,提高用户的体验。第 4 章

16、系统工具介绍4.1 HTML该选课系统是一个在线的 web 应用,它的前端页面应用到 HTML 开发。HTML(超文本标记语言)英文名为 Hyper Text Markup Language,它是为“网页创建和其他可在浏览器基于 PHP+MySql 的学生选课系统的设计与实现8看到的信息”设计的标记语言,被广泛用来构建 web 应用前端。HTML 可以结构化信息,比如标题,段落,表格等,在一定程度上也描述文档的外观和语义。1982 年由 蒂姆伯纳斯-李创建,由 IETF 用简化的 SGML(标准通用标记语言)语法进行进一步发展的HTML,后来成为国际标准,由万维网联盟(W3C)维护。HTML

17、文件的后缀名为.html,但是有一些比较旧的系统文件拓展名最多只能是三位,所以.htm 也被允许使用,如今,基本上都是用.html 作为后缀名。可以使用任何的文本编辑器编辑 html 文件,例如记事本,Notepad 等,或者使用“所见即所得”的专业的HTML 编辑器。4.2 DIV+CSS4.2.1 介绍DIV 是 HTML 语言中的一个标签。CSS 是层叠样式表(Cascading Style Sheets) , 用来定义 HTML 元素的表现,是 W3C 推出的格式化网页内容的标准技术。DIV+CSS 被用来设计网页的布局。4.2.2 DIV+CSS 布局和表格布局的比较传统的网页布局采

18、用表格(table)布局的方式。对于一个比较复杂的页面,使用表格布局会增加 table 的嵌套数量,不管是维护还是开发,都会带来巨大的成本。对于 CSS+DIV 布局的方式,CSS 样式可以共用,减少垃圾代码量,并且它实现了结构与表象的分离,对于网站的维护和扩展,查看源代码时,很容易看出网页的结构,修改页面的结构就会变得直观方便。4.2 ApacheApache HTTP Server 是 Apache 软件基金会的一个开源的网站服务器,是非常流行的网站服务器端软件,因为它快速、可靠,还可以通过简单的 API 扩展,被广泛地应用到web 应用作为服务器软件。Apache 通过编译模块的实现从而

19、支持许多的特性。一些通用的语言接口支持 perl,python,php 等。因为 Apache 是开源的,所以任何人在都可以修改项目源代码,定制自己的网站服务器,更好地为自己的项目服务。4.3 PHPPHP 全称 Hyper Preprocessor(超文本处理器) ,是一种被广泛用来开发动态网页的服务器端脚本语言,底层使用了 C 语言。它是一种开源的计算机脚本语言,所以它是完全免费的,任何人都可以使用它开发自己的动态网站。一般来说,PHP 是运行在服务器端,而且它可以运行在不同的服务器,操作系统平台上,并且还可以跟不同的数据库系统结合使用。4.4 MySqlMySql 是一个开放源代码的免费

20、的关系型数据库,所以任何人没有许可的情况下可以使用它。它使用的是著名的数据库语言 SQL 的标准形式,它的作品在多种操作系统上,有许多种语言,包括 php,perl,c,c+,java 等。因为 MySql 性能高,成本低,可靠基于 PHP+MySql 的学生选课系统的设计与实现9性好,被广泛用在各种大中型的网站建设中,相对于 DB2,oracle 等大型数据库来说,MySql 有它的不足之处,例如规模小功能有限等,但是对于中小型的网站来说,使用MySql 已经绰绰有余。4.5 bootstrapBootstrap 是 Twitter 开源的一整套前端解决方案,是一个用来快速开发 Web 应用

21、程序的工具包。它是 CSS 跟 Html 的结合,使用了最新的浏览器技术,封装了一整套的组件,给网页提供时尚的元素,比如按钮,表单,列表,网格等,该系统选用的是用 bootstrap制作的一个免费的管理员后台模板 charisma,通过对这个模板的重新布局,制作选课系统的前端页面。4.6 CodeIgniter后台框架用 PHP 的 CodeIgniter 框架。CodeIgniter 是一个小巧的轻量级框架,采用单一入口,采用了 MVC 思想,一般用来开发中小型的网站项目。图 4-1 应用程序流程图其中,index.php 是整个应用的入口文件,它负责初始化应用程序所需要的资源。Routin

22、g 负责检查 http 请求,以确定谁负责处理请求。如果缓存文件存在,则绕过系统的一般执行程序,直接从缓存中获取数据,直接发送给浏览器。应用程序控制器装在所有数据之前,http 请求和用户提交的数据都将被过滤。控制器接收用户请求的数据,并装载模型、辅助函数、核心库,以及处理其他特定请求的资源。最后视图渲染发送到 web浏览器的内容。第 5 章 数据库设计5.1 数据库命名规范数据库名称:cs。数据表命名规范:cs_作为所有表名的前缀。5.2 数据库逻辑设计实体:管理员,教师,学生,课程,教室,上课时间,新闻,专业关系:管理员:新闻 = 1:n基于 PHP+MySql 的学生选课系统的设计与实现

23、10教师:专业 = n:1学生:专业 = n:1教师:课程 = m:n图 5-1 管理员 E-R 图图 5-2 课室 E-R 图基于 PHP+MySql 的学生选课系统的设计与实现11图 5-3 课程 E-R 图图 5-4 新闻 E-R 图基于 PHP+MySql 的学生选课系统的设计与实现12图 5-5 学生 E-R 图图 5-6 专业 E-R 图基于 PHP+MySql 的学生选课系统的设计与实现13图 5-7 教师 E-R 图图 5-8 时间 E-R 图基于 PHP+MySql 的学生选课系统的设计与实现14图 5-9 选课系统 E-R 图5.3 数据库物理设计5.3.1 数据库表总汇基

24、于 PHP+MySql 的学生选课系统的设计与实现15表 5-1 数据库表总汇编号 名称 说明1 cs_admin 系统管理员信息表2 cs_student 学生信息表3 cs_teacher 教师信息表4 cs_course 课程信息表5 cs_news 新闻资讯表6 cs_subject 专业信息表7 cs_time 上课时间表8 cs_courseteacher 教师与课程关系对应表,也即是班级表9 cs_chooseinfo 学生选课信息表10 cs_classroom 课室信息表5.3.2 数据库表字段总汇表 5-2 cs_admin字段名称 数据类型 长度 说明a_id int 主

25、键a_username varchar 255 用户名a_password varchar 40 密码a_right text 权限a_addtime int 添加时间表 5-3 cs_student字段名称 数据类型 长度 说明s_id int 主键s_username varchar 255 学生姓名s_password varchar 40 密码s_grade varchar 5 年级s_class varchar 10 班级s_subject int 专业s_addtime int 添加时间基于 PHP+MySql 的学生选课系统的设计与实现16表 5-4 cs_teacher字段名称

26、 数据类型 长度 说明t_id int 主键t_username varchar 255 教师姓名t_password varchar 40 密码t_subject int 专业t_addtime int 添加时间表 5-5 cs_course字段名称 数据类型 长度 说明c_id int 主键c_coursename varchar 255 课程名称c_subject int 课程所属专业c_credit smallint 课程学分c_describe text 课程介绍c_addtime int 添加时间表 5-6 cs_news字段名称 数据类型 长度 说明n_id int 主键n_ti

27、tle varchar 255 新闻标题n_content text 新闻内容n_admin int 发布人n_addtime int 发布时间表 5-7 cs_subject字段名称 数据类型 长度 说明su_id int 主键su_subjectname varchar 255 专业名称su_addtime int 添加时间基于 PHP+MySql 的学生选课系统的设计与实现17表 5-8 cs_time字段名称 数据类型 长度 说明ti_id int 主键ti_start varchar 15 开始时间ti_end varchar 15 结束时间ti_jie int 第几节ti_addt

28、ime int 添加时间表 5-9 cs_classroom字段名称 数据类型 长度 说明cl_id int 主键cl_classroomnamevarchar 255 课室名称cl_seat int 课室容量cl_addtime int 添加时间表 5-10 cs_courseteacher字段名称 数据类型 长度 说明ct_id int 主键ct_course_id int 课程编号ct_teacher_id int 教师编号ct_classroom_id int 课室编号ct_week int 星期几ct_time_id int 上课时间ct_number int 课程班级容量ct_ad

29、dtime int 添加时间基于 PHP+MySql 的学生选课系统的设计与实现18表 5-11 cs_chooseinfo字段名称 数据类型 长度 说明ch_id int 主键ch_student int 学生编号ch_course int 课程编号ch_courseteacher int 班级编号ch_week int 星期几ch_time_id int 上课时间ch_addtime int 添加时间基于 PHP+MySql 的学生选课系统的设计与实现19第 6 章 系统结构设计6.1 系统总体结构图图 6-1 系统结构图6.2 约束条件设计1、管理员增加课程班级的时候,同一个教师不能在同

30、一个时间上不同的课程;2、管理员增加课程班级的时候,同一个教室同一时间不能有两个或两个以上的班级上课;3、学生选课的时候,同一时间不能选择不同的课程;第 7 章 系统界面设计7.1 登陆页面系统的三个模块共用一个登陆页面。输入账户名跟密码,不同的用户选择不同的身份,验证身份登陆之后分别跳转到不同的界面。基于 PHP+MySql 的学生选课系统的设计与实现20图 7-1 登陆页面7.2 管理员模块界面7.2.1 管理员身份进入系统之后,跳转到管理员模块首页,即是资讯管理页,可以查看已经发布的资讯,点击“添加”按钮发布资讯,同时可以在每条资讯后面点击“删除”来删除资讯,或者点击“修改”来修改资讯信

31、息。基于 PHP+MySql 的学生选课系统的设计与实现21图 7-2 资讯管理界面7.2.2 点击左键的导航栏中的“管理员账户管理” ,跳转到管理员账户管理界面。可以查看当前系统的所有管理员信息,点击“管理员添加”按钮可以添加管理员,点击“删除”可以删除管理员,点击“修改”可以修改管理员信息。图 7-3 管理员账户管理界面7.2.3 点击左键的导航栏中的“教师账户管理” ,跳转到教师账户管理界面。可以查看所有的教师信息,点击“教师账号添加”按钮可以添加教师信息,点击“删除”可以基于 PHP+MySql 的学生选课系统的设计与实现22删除教师,点击“修改”可以修改教师信息。图 7-4 教师账号

32、管理界面 7.2.4 点击左键的导航栏中的“学生账户管理” ,跳转到学生账户管理界面。可以查看所有的学生信息,点击“学生账号添加”按钮可以添加学生信息,点击“删除”可以删除学生信息,点击“修改”可以修改学生信息。图 7-5 学生账号管理界面7.2.5 点击左键的导航栏中的“专业管理” ,跳转到专业管理界面。可以查看已添加基于 PHP+MySql 的学生选课系统的设计与实现23的所有的专业信息,点击“专业添加”按钮可以添加专业,点击“删除”可以删除专业信息,点击“修改”可以修改专业信息。图 7-6 专业管理界面7.2.6 点击左键的导航栏中的“专业课程管理” ,跳转到专业课程管理界面。可以查看所

33、有的课程信息,点击“课程添加”按钮可以添加课程信息,点击“删除”可以删除课程信息,点击“修改”可以修改专业课程信息,点击“添加班级”可以添加当前课程的班级信息。图 7-7 专业课程管理界面基于 PHP+MySql 的学生选课系统的设计与实现247.2.7 点击左键的导航栏中的“班级管理” ,跳转到班级管理界面。可以查看所有的班级信息,点击“删除”可以删除班级信息,点击“修改”可以修改班级信息。图 7-8 班级管理界面7.2.8 点击左键的导航栏中的“课室管理” ,跳转到课室管理界面。可以查看所有的课室信息,点击“课室添加”按钮可以添加课室,点击“删除”可以删除课室,点击“修改”可以修改课室信息

34、。图 7-9 课室管理界面7.2.9 点击左键的导航栏中的“修改密码” ,跳转到修改密码界面。修改密码之前必基于 PHP+MySql 的学生选课系统的设计与实现25须输入原密码。图 7-10 修改密码界面7.3 教师模块界面7.3.1 以教师身份登陆成功之后跳转到教师管理界面首页,即是“资讯”页面。首页显示资讯的标题,点击标题之后进入对应资讯的详细页。图 7-11 教师模块资讯界面7.3.2 点击导航栏的“教师课表”跳转到教师课表页面。教师可以看到自己的课程安排,点击“查看名单”可以查看已经选择该课程的学生名单。基于 PHP+MySql 的学生选课系统的设计与实现26图 7-12 教师模块教师

35、课程表界面7.3.3 点击左键的导航栏中的“修改密码” ,跳转到修改密码界面。修改密码之前必须输入原密码。图 7-13 教师模块修改密码界面7.4 学生模块界面7.4.1 以学生身份登陆成功之后跳转到学生管理界面首页,即是“资讯”页面。首页显示资讯的标题,点击标题之后进入对应资讯的详细页。基于 PHP+MySql 的学生选课系统的设计与实现27图 7-14 学生模块资讯界面7.4.2 点击导航栏的“本专业选课”跳转到学生选课界面。本专业界面首先显示的是本专业的课程列表,点击“选课”跳转到对应课程的班级,学生选择唯一一个该课程的班级。点击“退选”之后,退选对应的课程。图 7-15 学生模块本专业

36、选课界面7.4.3 点击导航栏的“课表查询”跳转到学生课程表查询界面。学生可以查看已经选择的课程,以及上课时间、地点、课程学分以及课程老师。基于 PHP+MySql 的学生选课系统的设计与实现28图 7-16 学生模块课表查询界面7.4.4 点击左键的导航栏中的“修改密码” ,跳转到修改密码界面。修改密码之前必须输入原密码。图 7-17 学生模块修改密码界面基于 PHP+MySql 的学生选课系统的设计与实现29第 8 章 编码8.1 系统软件架构模式本系统的编码实现采用 MVC 的设计思想。MVC 英文即是 Model-View-Controller,通过这种思想将应用的逻辑和表现分离,实际

37、上分为三层,即模型层,视图层和控制层。视图(View)即是和用户交互的界面。对于类似该学生选课系统的 WEB 应用来说,视图即是一些 HTML 界面。MVC 的设计模式对视图的处理仅限制于数据的采集和处理,以及用户请求,不包括业务逻辑的处理。控制器(Controller)是系统处理所有用户请求的最初入口点。控制器接收、截取用户请求,对请求数据完成必要的处理之后,把请求委托给分发者类,分发者类负责视图的管理,它将选择哪个视图提供给用户。模型(Model)用于封装跟业务逻辑相关的数据以及对数据的处理,所以它有权直接访问数据,比如数据库。模型不依赖于控制器和视图,也就是说模型不关心数据会被如何处理和

38、显示。8.2 CodeIgniter 框架CodeIgniter 提供了一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。并且使用了 MVC 的编程思想,使得系统的开发过程和后期维护或者功能扩展上变得方便可行。8.3 模型设计考虑到该系统的数据库表比较多,而且不同模块可能调用同一类型的数据,所以,设计该系统的模型时,选择一个数据表对应一个模型的方法,模型对应的文件名为 data_表名。表 8-1 模型总汇模型 说明data_admin 对管理员表的增删查改操作data_chooseinfo 对学生班级关系表(即学生选课表)的增删查改操作data_classroo

39、m 对课室表的增删查改操作data_course 对课程表的增删查改操作data_courseteacher 对教师课程关系表(即班级表)的增删查改操作data_news 对资讯表的增删查改操作data_student 对学生表的增删查改操作data_subject 对专业表的增删查改操作data_teacher 对教师表的增删查改操作data_time 对时间表的增删查改操作基于 PHP+MySql 的学生选课系统的设计与实现308.4 视图该学生选课系统一共分为三个模块,所以在应用视图下,将视图文件细分为三个模块,分别是 admin,student 和 teacher。表 8-2 管理员模

40、块视图视图 说明admin_add.php 管理员帐号添加页面admin_manage.php 管理员账号管理页面admin_change.php 管理员信息修改页面article_change.php 资讯修改页面article_detail.php 资讯详细页面article_add.php 资讯添加页面change_password.php 修改密码页面class_add.php 班级添加页面class_change.php 班级信息修改页面class_manage.php 班级页面管理页面classroom_change.php 课室信息修改页面classroom_manage.php

41、 课室管理页面classroom_add.php 课室信息添加页面course_add.php 专业课程添加页面course_change.php 专业课程信息修改页面footer.php 所有页面页尾header.php 所有页面页首index.php 首页,即是资讯管理页面student_add.php 学生账号添加页面student_manage.php 学生账号管理页面student_change.php 学生信息修改页面subject.php 专业课程管理页面subject_add.php 专业添加页面subject_change.php 专业修改页面subject_manage.php 专业管理页面teacher_manage.php 教师账号管理页面teacher_add.php 教师账号添加页面teacher_change.php 教师信息修改页面

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报