针高等院校校学生众传统选课方式效率低课程安排点安排学生选课等程中非常容易出错造成课程时间突者点突时教务员选课统计十分麻烦消耗力巨助先进互联网技术需开发网络选课系统
系统属web应前台采前端框架bootstrap台采phpCodeIgniter框架数库采MySql服务器软件Apache理员通理员操作台学校课室学生信息课程班级等进行线理学生通学生操作台进行线选课教师通教师操作台查课表已选课程学生名单通线操作减少手工操作带失误时便理员数进行统计
关键词:选课系统PHPMySqlbootstrapCodeIgniterApache
Abstract
For many students of universitiesit is inefficient to select course with traditional wayFor the arrangement of time and locationit is easy to make mistake when students select courseand the senate staff are put to trouble when they collect statisticsThe traditional way to select course may cost too muchSowith the advanced internet technologywe are able to develop a network system for selecting course according to the need
This system is a web applicationWe use the bootstrap to develope the frontand Codeignitera frame of PHP for the backstageand 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 adminsteachersstudentscoursesclassroom and so onStudents have the right to select courseand teachers can know the curriculum of himselfThrough online operationsit will play an important role in reducing errors caused by manual operationand it make collecting statistics more convenient
Key words courseselection systemPHPMySqlbootstrapCodeIgniterApache
目录
中文摘 1
Abstract 2
目录 3
第1章 引言 5
11 引言 5
第2章 系统功分析 5
21 系统介绍 5
22 系统面户群体 5
23 系统功需求 5
24 系统非功性需求 6
25 系统开发环境 7
第3章 行性分析 7
31 技术行性 7
32 时间硬件设备行性 7
第4章 系统工具介绍 7
41 HTML 7
42 DIV+CSS 8
42 Apache 8
43 PHP 8
44 MySql 8
45 bootstrap 9
46 CodeIgniter 9
第5章 数库设计 9
51 数库命名规范 9
52 数库逻辑设计 9
53 数库物理设计 14
531 数库表总汇 14
第6章 系统结构设计 19
61 系统总体结构图 19
62 约束条件设计 19
第7章 系统界面设计 19
71 登陆页面 19
72 理员模块界面 20
73 教师模块界面 25
74学生模块界面 26
第8章 编码 29
81 系统软件架构模式 29
82 CodeIgniter框架 29
83 模型设计 29
84 视图 30
85 控制器设计 31
参考文献 32
致谢 33
第1章 引言
11 引言
着计算机科学技术断发展计算机科学强计算功已深刻认识计算机已进入类社会领域发挥着越越重作处利够进行信息理计算机进行信息控制仅提高工作效率提高安全性尤复杂信息理计算机够充分发挥优越性计算机进行信息理信息理系统开发密切相关系统开发系统理前提
高等院校作种信息资源集散更作重社会培养基学生课程繁计算机成高校教学理中缺工具国高校实学分制允许学生选课学生选课理员课程理等相互制约素业务流程复杂工作量
传统信息理方式基表格文纸质手工处理选课情况统计基工检查工计算学生选课权限选课代号数信息处理量特限制条件太业务流程较复杂容易出错数繁查找困难利计算机互联网技术信息进行理时代趋势
国外教学软件发展时间较早相国说较成熟美国威斯康星学1892年初提出远程教育名词远程教育通先进互联网技术实现资源享资源理等学生线选课系统中部分学生选课系统户提供充分信息理方便查询功够老师学生教务理员提供方便避免传统选课效率低易出错更新维护困难缺点着互联网普网选课已神话相信会更户网选课改变认识
第2章 系统功分析
21 系统介绍
系统定位高等院校户群体高等院校校学生教师教务理员系统包含三模块分理员模块教师模块学生模块
22 系统面户群体
系统定位高等院校户群体高等院校校学生教师教务理员
23 系统功需求
231 理员模块
表21 系统理员模块功表
编号
功名称
功说明
1
资讯理
添加新资讯查修改删已发表资讯
2
专业课程理
添加课程查修改删已添加课程添加应课程班级
3
班级理
修改删已添加班级信息
4
学生账号理
添加学生信息查修改删学生信息
5
教师账号理
添加教师信息查修改删教师信息
6
理员账号理
添加理员信息查修改删理员信息
7
课室理
添加课室查修改删课室信息
8
专业理
添加专业查修改删专业信息
9
修改密码
修改前登录户密码
232 教师模块
表22 系统教师模块功表
编号
功名称
功说明
1
资讯
查资讯
2
教师课表
查前登录教师课表信息
3
修改密码
修改前登录户密码
233 学生模块
表23 系统学生模块功表
编号
功名称
功说明
1
资讯
查资讯
2
专业选课
选择专业课程者退选已选课程
3
课表查询
查课表
4
修改密码
修改前登录户密码
24 系统非功性需求
界面:简洁易美观气定兼容性
环境:服务器环境:windows+Apache+PHP+MySql
质量:易性稳定性拓展性
25 系统开发环境
前端页面开发环境dreamweaver视化网页设计网站理工具支持新web技术例检查HTMLHTML格式控制图编辑ftp视化网页编程等
PHP开发环境Zend Studio专业开发员套php集成开发环境 Zend Studio具专业企业开发者开发配置调试理关键商务PHP应易性伸缩性性扩展性
数库理工具Navicat for MySQLNavicate for mysqlmysql数库理开发维护提供强图形界面连接机者远程mysql服务器支持部分功表视图函数事件程等功包括sql创建工具编辑器数模型工具命令行工具数传输数步导入导出功报表功等
第3章 行性分析
31 技术行性
计算机学程中掌握计算机基础知识熟练PHP+Mysql开发中型网站系统数库设计够需求提取系统中实体建立ER图数库服务器环境搭建创建数库系统分析设计非常清楚该选课系统需求通绘制系统总体结构图更加直观发现整系统步步实现踪整开发进度握开发时间成开发工具该选课系统属web应项目web项目开发验前端台数库选择直观认识保证编码程中会出现问题系统期维护采开发中选择互联网中应开发中广泛应MVC思想开发工具选择采成熟框架进行敏捷开发系统修改扩展容易实现该学生选课系统实现技术行
32 时间硬件设备行性
该选课系统开发耗时概月左右时间充分硬件设备开发程中计算机机子搭建web服务器数库服务器环境编码测试等操作实现系统完成开发系统部署专服务器专服务器托机房专门负责理保证系统7*24时运行提高户体验
第4章 系统工具介绍
41 HTML
该选课系统线web应前端页面应HTML开发HTML(超文标记语言)英文名Hyper Text Markup Language网页创建浏览器信息设计标记语言广泛构建web应前端HTML结构化信息标题段落表格等定程度描述文档外观语义1982年蒂姆·伯纳斯李创建IETF简化SGML(标准通标记语言)语法进行进步发展HTML成国际标准万维网联盟(W3C)维护
HTML文件缀名html较旧系统文件拓展名三位htm允许基html作缀名文编辑器编辑html文件例记事Notepad 等者见专业HTML编辑器
42 DIV+CSS
421 介绍
DIVHTML语言中标签CSS层叠样式表(Cascading Style Sheets) 定义HTML元素表现W3C推出格式化网页容标准技术DIV+CSS设计网页布局
422 DIV+CSS布局表格布局较
传统网页布局采表格(table)布局方式较复杂页面表格布局会增加table嵌套数量维护开发会带巨成
CSS+DIV布局方式CSS样式减少垃圾代码量实现结构表象分离网站维护扩展查源代码时容易出网页结构修改页面结构会变直观方便
42 Apache
Apache HTTP ServerApache软件基金会开源网站服务器非常流行网站服务器端软件快速通简单API扩展广泛应web应作服务器软件Apache通编译模块实现支持许特性通语言接口支持perlpythonphp等Apache开源修改项目源代码定制网站服务器更项目服务
43 PHP
PHP全称Hyper Preprocessor(超文处理器)种广泛开发动态网页服务器端脚语言底层C语言种开源计算机脚语言完全免费开发动态网站
般说PHP运行服务器端运行服务器操作系统台数库系统结合
44 MySql
MySql开放源代码免费关系型数库没许情况著名数库语言SQL标准形式作品种操作系统许种语言包括phpperlcc++java等MySql性高成低性广泛种中型网站建设中相DB2oracle等型数库说MySql足处例规模功限等中型网站说MySql已绰绰余
45 bootstrap
BootstrapTwitter开源整套前端解决方案快速开发Web应程序工具包CSSHtml结合新浏览器技术封装整套组件网页提供时尚元素钮表单列表网格等该系统选bootstrap制作免费理员台模板charisma通模板重新布局制作选课系统前端页面
46 CodeIgniter
台框架PHPCodeIgniter框架CodeIgniter巧轻量级框架采单入口采MVC思想般开发中型网站项目
图41 应程序流程图
中indexphp整应入口文件负责初始化应程序需资源Routing负责检查http请求确定谁负责处理请求果缓存文件存绕系统般执行程序直接缓存中获取数直接发送浏览器应程序控制器装数前http请求户提交数滤控制器接收户请求数装载模型辅助函数核心库处理特定请求资源视图渲染发送web浏览器容
第5章 数库设计
51 数库命名规范
数库名称:cs
数表命名规范:cs_作表名前缀
52 数库逻辑设计
实体:理员教师学生课程教室课时间新闻专业
关系:理员:新闻 1:n
教师:专业 n:1
学生:专业 n:1
教师:课程 m:n
图51 理员ER图
图52 课室ER图
图53 课程ER图
图54 新闻ER图
图55 学生ER图
图56 专业ER图
图57 教师ER图
图58 时间ER图
图59 选课系统ER图
53 数库物理设计
531 数库表总汇
表51 数库表总汇
编号
名称
说明
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
课室信息表
532 数库表字段总汇
表52 cs_admin
字段名称
数类型
长度
说明
a_id
int
键
a_username
varchar
255
户名
a_password
varchar
40
密码
a_right
text
权限
a_addtime
int
添加时间
表53 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
添加时间
表54 cs_teacher
字段名称
数类型
长度
说明
t_id
int
键
t_username
varchar
255
教师姓名
t_password
varchar
40
密码
t_subject
int
专业
t_addtime
int
添加时间
表55 cs_course
字段名称
数类型
长度
说明
c_id
int
键
c_coursename
varchar
255
课程名称
c_subject
int
课程属专业
c_credit
smallint
课程学分
c_describe
text
课程介绍
c_addtime
int
添加时间
表56 cs_news
字段名称
数类型
长度
说明
n_id
int
键
n_title
varchar
255
新闻标题
n_content
text
新闻容
n_admin
int
发布
n_addtime
int
发布时间
表57 cs_subject
字段名称
数类型
长度
说明
su_id
int
键
su_subjectname
varchar
255
专业名称
su_addtime
int
添加时间
表58 cs_time
字段名称
数类型
长度
说明
ti_id
int
键
ti_start
varchar
15
开始时间
ti_end
varchar
15
结束时间
ti_jie
int
第节
ti_addtime
int
添加时间
表59 cs_classroom
字段名称
数类型
长度
说明
cl_id
int
键
cl_classroomname
varchar
255
课室名称
cl_seat
int
课室容量
cl_addtime
int
添加时间
表510 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_addtime
int
添加时间
表511 cs_chooseinfo
字段名称
数类型
长度
说明
ch_id
int
键
ch_student
int
学生编号
ch_course
int
课程编号
ch_courseteacher
int
班级编号
ch_week
int
星期
ch_time_id
int
课时间
ch_addtime
int
添加时间
第6章 系统结构设计
61 系统总体结构图
图61 系统结构图
62 约束条件设计
理员增加课程班级时候教师时间课程
二 理员增加课程班级时候教室时间两两班级课
三 学生选课时候时间选择课程
第7章 系统界面设计
71 登陆页面
系统三模块登陆页面输入账户名密码户选择身份验证身份登陆分跳转界面
图71 登陆页面
72 理员模块界面
721 理员身份进入系统跳转理员模块首页资讯理页查已发布资讯点击添加钮发布资讯时条资讯面点击删删资讯者点击修改修改资讯信息
图72 资讯理界面
722 点击左键导航栏中理员账户理跳转理员账户理界面查前系统理员信息点击理员添加钮添加理员点击删删理员点击修改修改理员信息
图73 理员账户理界面
723 点击左键导航栏中教师账户理跳转教师账户理界面查教师信息点击教师账号添加钮添加教师信息点击删删教师点击修改修改教师信息
图74 教师账号理界面
724 点击左键导航栏中学生账户理跳转学生账户理界面查学生信息点击学生账号添加钮添加学生信息点击删删学生信息点击修改修改学生信息
图75 学生账号理界面
725 点击左键导航栏中专业理跳转专业理界面查已添加专业信息点击专业添加钮添加专业点击删删专业信息点击修改修改专业信息
图76 专业理界面
726 点击左键导航栏中专业课程理跳转专业课程理界面查课程信息点击课程添加钮添加课程信息点击删删课程信息点击修改修改专业课程信息点击添加班级添加前课程班级信息
图77 专业课程理界面
727 点击左键导航栏中班级理跳转班级理界面查班级信息点击删删班级信息点击修改修改班级信息
图78 班级理界面
728 点击左键导航栏中课室理跳转课室理界面查课室信息点击课室添加钮添加课室点击删删课室点击修改修改课室信息
图79 课室理界面
729 点击左键导航栏中修改密码跳转修改密码界面修改密码前必须输入原密码
图710 修改密码界面
73 教师模块界面
731 教师身份登陆成功跳转教师理界面首页资讯页面首页显示资讯标题点击标题进入应资讯详细页
图711 教师模块资讯界面
732 点击导航栏教师课表跳转教师课表页面教师课程安排点击查名单查已选择该课程学生名单
图712 教师模块教师课程表界面
733 点击左键导航栏中修改密码跳转修改密码界面修改密码前必须输入原密码
图713 教师模块修改密码界面
74学生模块界面
741 学生身份登陆成功跳转学生理界面首页资讯页面首页显示资讯标题点击标题进入应资讯详细页
图714 学生模块资讯界面
742 点击导航栏专业选课跳转学生选课界面专业界面首先显示专业课程列表点击选课跳转应课程班级学生选择唯该课程班级点击退选退选应课程
图715 学生模块专业选课界面
743 点击导航栏课表查询跳转学生课程表查询界面学生查已选择课程课时间点课程学分课程老师
图716学生模块课表查询界面
744 点击左键导航栏中修改密码跳转修改密码界面修改密码前必须输入原密码
图717 学生模块修改密码界面
第8章 编码
81 系统软件架构模式
系统编码实现采MVC设计思想MVC英文ModelViewController通种思想应逻辑表现分离实际分三层模型层视图层控制层
视图(View)户交互界面类似该学生选课系统WEB应说视图HTML界面MVC设计模式视图处理仅限制数采集处理户请求包括业务逻辑处理
控制器(Controller)系统处理户请求初入口点控制器接收截取户请求请求数完成必处理请求委托分发者类分发者类负责视图理选择视图提供户
模型(Model)封装业务逻辑相关数数处理权直接访问数数库模型赖控制器视图说模型关心数会处理显示
82 CodeIgniter框架
CodeIgniter提供套丰富标准库简单接口逻辑结构目开发员更快速进行项目开发MVC编程思想系统开发程期维护者功扩展变方便行
83 模型设计
考虑该系统数库表较模块调类型数设计该系统模型时选择数表应模型方法模型应文件名data_表名
表81 模型总汇
模型
说明
data_admin
理员表增删查改操作
data_chooseinfo
学生班级关系表(学生选课表)增删查改操作
data_classroom
课室表增删查改操作
data_course
课程表增删查改操作
data_courseteacher
教师课程关系表(班级表)增删查改操作
data_news
资讯表增删查改操作
data_student
学生表增删查改操作
data_subject
专业表增删查改操作
data_teacher
教师表增删查改操作
data_time
时间表增删查改操作
84 视图
该学生选课系统分三模块应视图视图文件细分三模块分adminstudentteacher
表82 理员模块视图
视图
说明
admin_addphp
理员帐号添加页面
admin_managephp
理员账号理页面
admin_changephp
理员信息修改页面
article_changephp
资讯修改页面
article_detailphp
资讯详细页面
article_addphp
资讯添加页面
change_passwordphp
修改密码页面
class_addphp
班级添加页面
class_changephp
班级信息修改页面
class_managephp
班级页面理页面
classroom_changephp
课室信息修改页面
classroom_managephp
课室理页面
classroom_addphp
课室信息添加页面
course_addphp
专业课程添加页面
course_changephp
专业课程信息修改页面
footerphp
页面页尾
headerphp
页面页首
indexphp
首页资讯理页面
student_addphp
学生账号添加页面
student_managephp
学生账号理页面
student_changephp
学生信息修改页面
subjectphp
专业课程理页面
subject_addphp
专业添加页面
subject_changephp
专业修改页面
subject_managephp
专业理页面
teacher_managephp
教师账号理页面
teacher_addphp
教师账号添加页面
teacher_changephp
教师信息修改页面
表83 教师模块视图
视图
说明
article_detailphp
资讯详细页
indexphp
首页资讯列表页
change_passwordphp
修改密码页面
headerphp
页首
footerphp
页尾
student_showphp
课程学生显示页
teacher_coursephp
教师课表显示页
表84 学生模块视图
视图
说明
indexphp
首页资讯列表页
headerphp
页首
footerphp
页尾
article_detailphp
资讯详细页
be_selectedphp
学生课表显示页
change_passwordphp
修改密码页
subjectphp
专业选课页
selectphp
课程班级选择页
85 控制器设计
视图样控制器细分adminstudentteacher三模块三模块登陆页面增加user控制器单独处理户登录注销操作
表85 理员模块控制器
控制器
说明
main
控制器
表86 教师模块控制器
控制器
说明
main
控制器
表87 学生模块控制器
控制器
说明
main
控制器
表88 户控制器
控制器
说明
user
户登录注销
参考文献
[1] Luke WellingLaura ThomsonPHPMySQL Web开发机械工业出版社2009
[2] Ben FortaMySQL必知必会民邮电出版社2009年1月
[3] 吴津津田睿李云刘昊PHPMySQL权威指南机械工业出版社华章公司2011年10月
[4] 王珊萨师煊 数库系统概高等教育出版社2006年5月
致谢
首先衷心感谢指导老师老师精心指导李老师指导利完成毕业设计技术精神遇问题寻求解答程中李老师予帮助终帮助利完成毕业文撰写谢谢
次感谢完成毕业设计程中帮助学力限编码调试程中老师学帮助完成毕业设计里衷心感谢
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档