当前位置:网站首页>基于php在线考试管理系统获取(php毕业设计)
基于php在线考试管理系统获取(php毕业设计)
2022-08-01 21:21:00 【毕设源码库】
基于php在线考试管理系统
在线考试管理系统是基于php编程语言,Thinkphp框架设计,mysql数据库设计,本设计拥有考生和管理员两个角色,其中考生可以注册和登陆系统,进行在线考试,提交试卷,查看得分,管理员可以登陆后台对考试试题,考试信息,在线公告,角色权限等功能进行管理,本系统界面美观,功能齐全,适合作为php毕业设计和课程设计参考和学习。
一.技术环境
php版本:5.3 及以上
后台框架:thinkphp
开发工具: notepad++,sublime,phpstorm都可
数据库: mysql
服务器: apache
集成环境: phpstudy(或其他)
详细技术:HTML+CSS+JS+PHP+MYSQL+PhpStudy+thinkphp
二.项目文件
三.系统功能
四.代码示例
<?php
// +----------------------------------------------------------------------
// | 注册功能
// | 设计思路,首先判断用户输入的数据是否正确,在判断用户的邮箱有没有注
// | 过,满足条件,注册成功,ajaxReturn函数在include.php中
// +----------------------------------------------------------------------
//引用常用的函数
require_once('../../../config/config.php');
//获取前台发来的数据
$name = $_POST['name'];//获取用户名
$password = $_POST['password'];//获取密码
$email = $_POST['email'];//获取游戏
$password_o = $_POST['password_o'];//获取重复密码
//判断用户名
if(!$name) {
ajaxReturn(0,'用户名格式不正确,英文加数字!');
}
//判断密码是否输入正确
if(!is_password($password)) {
ajaxReturn(0,'密码格式不正确,不少于6位!');
}
//判断邮箱是否输入正确
if(!is_email($email)) {
ajaxReturn(0,'邮箱格式不正确!');
}
//判断两次密码输入是否一致
if($password != $password_o) {
ajaxReturn(0,'两次输入的密码不一致!');
}
//查询数据库是否已经注册过此邮箱
$sql = "SELECT * FROM users WHERE email='$email'";
$result1 = fetchAll($link,$sql);
if($result1) {
ajaxReturn(0,'抱歉,此邮箱已经注册过!');
}
$data = array(
'name'=>$name,
'password'=>$password,
'email'=> $email,
'addtime'=>date('Y-m-d H:i:s')
);
//保存用户的注册信息到users表,其中的$link在include.php里
$result2 = insert($link,$data,'users');
//注册成功和失败的话,返回提示
if(!$result2) {
ajaxReturn(0,'注册失败!');
}else{
ajaxReturn(1,'恭喜你注册成功');
}
<?php
// +----------------------------------------------------------------------
// | 登录功能
// | 设计思路,获取到用户输入的账号和密码,验证用户输入的数据,验证通过,
// | 保存用户的登录信息到数据库,并且生成cookie,提示用户登录成功
// +----------------------------------------------------------------------
//引用常用的函数
require_once('../../../config/config.php');
//获取登录的用户名
$name = $_POST['name'];
//获取用户的登录密码
$password = $_POST['password'];
//获取登录的角色
$role = $_POST['role'];
//判断用户输入的用户名是否为空
if (!$name) {
//如果为空,返回提示信息
ajaxReturn(0, '请输入用户名');
}
//判断用户输入的密码是否为空
if (!$password) {
ajaxReturn(0,'请输入密码');
}
//sql语句
$sql = "SELECT * FROM users WHERE name='$name' AND password='$password'";
//查询数据库用户记录,fetchOne函数在mysql.php里
$result = fetchOne($link,$sql);
//如果没有查询到此用户
if(!$result) {
ajaxReturn(0,'抱歉,登录名和密码错误!');
}else {
//保存用户的session
$user = array(
'id'=>$result['id'],
'name'=>$result['name'],
'avatar' =>$result['avatar'],
'role'=>$result['role']
);
//如果是用户登录
if($role == 1) {
if($result['role'] == 1){
//设置session,失效时间1小时
$_SESSION["user"]=$user;
ajaxReturn(1,'恭喜你,登录成功!');
}else{
ajaxReturn(0,'抱歉,你不是用户!');
}
}
//如果是管理员登录
if($role == 2 ) {
//判断是否是管理员
if($result['is_admin'] == 1) {
//设置session,失效时间1小时
$_SESSION["admin"]=$user;
//提示登录成功
ajaxReturn(2,'恭喜你,登录成功!');
}else{
//如果不是管理员,给予提示
ajaxReturn(0,'抱歉,你不是管理员!');
}
}
}
五.项目截图
边栏推荐
猜你喜欢
随机推荐
树莓派的信息显示小屏幕,显示时间、IP地址、CPU信息、内存信息(c语言),四线的i2c通信,0.96寸oled屏幕
C专家编程 第1章 C:穿越时空的迷雾 1.4 K&R C
【力扣】字符串相乘
Realize the superposition display analysis of DWG drawing with CAD in Cesium
二分法中等 LeetCode6133. 分组的最大数量
封装一个管理 url 状态的 hook
LeetCode·32.最长有效括号·栈·动态规划
R语言 pca主成分分析的主要方法
方舟:生存进化PVE模式和PVP模式
Graph adjacency matrix storage
作业8.1 孤儿进程与僵尸进程
C陷阱与缺陷 第7章 可移植性缺陷 7.7 除法运算时发生的截断
记录第一次给开源项目提 PR
win10版本1803无法升级1903系统如何解决
C陷阱与缺陷 第7章 可移植性缺陷 7.10 首先释放,然后重新分配
Appendix A printf, varargs and stdarg A.1 printf family of functions
C Expert Programming Chapter 1 C: Through the Fog of Time and Space 1.4 K&R C
ISC2022 HackingClub白帽峰会倒计时1天!最全议程正式公布!元宇宙集结,精彩绝伦!
包含吲哚菁绿的多聚体白蛋白纳米球/载马钱子碱纳米粒的牛血清白蛋白微球的制备
可视化——Superset使用