基于php的选课系统 ThinkPHP+MySQL(实现非常完善)

免责申明:上传资料仅供学习交流使用,禁止一切不正当使用行为,如有事故本人概不负责

因为在CSDN上没找到完成度比较高的代码(或许有但下载积分太高),所以自己写了一个,以下功能全部实现,界面简洁大方

下载链接:http://download.csdn.net/download/xunciy/9875267

选课系统针对不同的用户角色进行管理,设定以下三种角色:学生、教师、管理员,不同角色对应不同权限的操作功能。

其中学生选课允许同时选择多门课程,但要判断上课时间是否冲突(一二节课与一二三节课也有冲突判断)、限选人数判断等

学生:查看可选课程、选择课程、查询已选课程、退选课程、修改密码
老师:发布课程、查询已发布课程、查询选课学生信息、修改密码
管理员:管理学生信息、管理教师信息、修改密码

对代码包的说明:请优先查看word文档,其中包含了整个项目的设计、实现和测 试

选课系统部分截图展示:

登录:



登陆后个人首页:


选课列表:


备注以及补充:
一二节课与一二三节课的时间冲突判断,理论上是使用二进制表示上课时间,如 1 1 0 0 0 0 0 0 0 0 0 和 1 1 1 0 0 0 0 0 0 0 0 对比相同位置1是否重复出现,只要有一个1重复出现就判断时间冲突。将 1 1 0 0 0 0 0 0 0 0 0 放入课程表course每门课对应的信息中,如若要比较某个1又涉及到如何在ThinkPHP里吧char类型中的字符一个个提取出来比较的问题,因为本人也是才刚开始接触PHP不知道是否有和java里一样的提取单个字符的函数,或者没有就是要自己想办法写一个函数来实现了,所以没有用这样子的方法。暂时采用折中的方法实现,就是将1或者0分别存入一个字段中来一个个比较,因为这样弊端很多所以只是在数据库里手动添加了1或0用于测试时间冲突判断的功能,所以新建的课程不会有1或0的相应字段的值,在手动添加前也无法进行更为具体的时间冲突判断,如果有兴趣可以自行实现看看。
免责申明:上传资料仅供学习交流使用,禁止一切不正当使用行为,如有事故本人概不负责

猜你喜欢

转载自blog.csdn.net/xunciy/article/details/73484771