.简介
本套学生选课信息管理系统基于PHP7 / MySQL编写,部署简易,功能强大,上手简单。 系统可以准确地记录和查询学生信息,包括学生的姓名、单位、年龄、性别以及身份证号码等。 系统可以准确地记录学生地每一次奖惩情况。 系统可以对学校的院系情况进行管理,包括设置学院名称、修改某学院某专业方向的名称等。 系统可以对基础数据进行维护。 系统能够对开设的课程进行管理 学生选课管理、考试(登记分数)、补考重修管理 提供强大数据统计、查询、报表生成以及打印等功能。 用户权限管理 异常处理
2.安装
确保要部署的机器上已经安装好主流版本的PHP/MySQL,配置好了Web服务器,已将管理系统源码文件复制到要部署的目录中,赋予需要的文件权限。建好数据库,赋予数据库用户需要的读写权限。
可以导入精简示例数据 example_lite.sql 或按下面步骤进行全新安装。
在 PHP7.2 + MYSQL5.6 及 PHP7.4 + MySQL8.0 下测试通过。
执行建表命令
SET NAMES utf8;
SET time_zone = '+00:00';
SET foreign_key_checks = 0;
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
DROP TABLE IF EXISTS `course`;
CREATE TABLE `course` (
`cid` char(6) DEFAULT NULL,
`cname` varchar(15) DEFAULT NULL,
`credit` decimal(2,1) DEFAULT NULL,
`cadd` varchar(20) DEFAULT NULL,
`did` char(2) DEFAULT NULL,
`tname` varchar(15) DEFAULT NULL,
UNIQUE KEY `cid_2` (`cid`),
KEY `cid` (`cid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department` (
`did` char(2) DEFAULT NULL,
`dname` varchar(15) NOT NULL,
`dadd` varchar(30) DEFAULT NULL,
`dmng` varchar(10) DEFAULT NULL,
`dtel` varchar(15) DEFAULT NULL,
UNIQUE KEY `did_2` (`did`),
KEY `did` (`did`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `major`;
CREATE TABLE `major` (
`did` char(2) DEFAULT NULL,
`mname` varchar(20) DEFAULT NULL,
UNIQUE KEY `did_2` (`did`,`mname`),
KEY `did` (`did`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
`sid` char(12) NOT NULL,
`name` varchar(10) NOT NULL,
`sex` char(1) NOT NULL,
`age` varchar(3) DEFAULT NULL,
`class` varchar(10) DEFAULT NULL,
`idnum` char(18) DEFAULT NULL,
`did` char(2) DEFAULT NULL,
`email` char(30) DEFAULT NULL,
`tel` char(11) DEFAULT NULL,
PRIMARY KEY (`sid`),
UNIQUE KEY `sid` (`sid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `student_course`;
CREATE TABLE `student_course` (
`sid` char(12) NOT NULL,
`cid` char(6) NOT NULL,
`score` int(3) DEFAULT NULL,
`status` char(1) DEFAULT NULL,
KEY `sid` (`sid`),
KEY `cid` (`cid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `student_log`;
CREATE TABLE `student_log` (
`sid` varchar(12) DEFAULT NULL,
`type` char(1) DEFAULT NULL,
`reason` varchar(30) DEFAULT NULL,
`detail` varchar(100) DEFAULT NULL,
`logdate` date DEFAULT NULL,
`addtime` datetime DEFAULT NULL,
KEY `sid` (`sid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `user_admin`;
CREATE TABLE `user_admin` (
`adminID` varchar(15) DEFAULT NULL,
`adminName` varchar(15) DEFAULT NULL,
`pwd` char(32) DEFAULT NULL,
KEY `adminID` (`adminID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `user_student`;
CREATE TABLE `user_student` (
`sid` char(12) NOT NULL,
`pwd` char(32) DEFAULT NULL,
UNIQUE KEY `sid` (`sid`),
KEY `sid_2` (`sid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
新建管理员账户,在表 user_admin 中新建一行记录,adminID 为管理员ID,adminName 为管理员姓名,pwd为MD5加密后的密码。 实例代码如下(通用的admin):
INSERT INTO `user_admin` (`adminID`, `adminName`, `pwd`) VALUES
('admin', 'A先生', '21232f297a57a5a743894a0e4a801fc3');
然后,修改 ./config/database.php 中的数据库连接信息。基于 PHP 的开源单页数据库管理程序 Adminer 可以助你便捷管理数据库。
3.功能介绍
学生管理
奖惩管理
院系管理
课程管理
选课管理
数据统计
系统设置
4.系统实现
4.1首页
用户名或密码错误
4.2登录逻辑
num_rows>0){
$_SESSION["login"]=true;
$_SESSION["user"]=$user;
header ("HTTP/1.1 302 Moved Temporatily");
header ("Location: "."./user/");
exit();
}
else if($result2->num_rows>0){
$_SESSION["login"]=true;
$_SESSION["admin"]=$user;
header ("HTTP/1.1 302 Moved Temporatily");
header ("Location: "."./admin/");
exit();
}
else{
header ("HTTP/1.1 302 Moved Temporatily");
header ("Location: "."./?retry=1");
exit();
}
?>
4.3数据库配置
4.4主页
学生选课信息管理系统@2019
学生选课信息管理系统
你好,管理员 登出
4.5业务代码
课程管理 >> 新增课程
课程管理 >> 新增课程
5.运行截图