第三篇 《随机点名答题系统》——人员管理详解(类抽奖系统、在线答题系统、线上答题系统、在线点名系统、线上点名系统、在线考试系统、线上考试系统)

目录

1.功能需求

2.数据库设计

3.流程设计

4.关键代码

4.1.人员分组

4.1.1数据请求示意图

4.1.2添加组别(login.php)数据请求代码

4.1.3编辑组别(login.php)数据请求代码

4.1.4加入分组(login.php)数据请求代码

4.1.5移除分组(login.php)数据请求代码

4.1.6删除分组(login.php)数据请求代码

[4.1.7 业务处理Service(zuBieService.php)](#4.1.7 业务处理Service(zuBieService.php))

4.1.7.1代码

4.1.4.2业务处理逻辑流程图

[4.2. 人员维护](#4.2. 人员维护)

4.2.1数据请求示意图

4.2.2添加人员(login.php)数据请求代码数据请求代码)

4.2.3编辑人员信息(login.php)数据请求代码数据请求代码)

4.2.4删除人员(login.php)数据请求代码数据请求代码)

4.2.5业务处理Service(renYuanSevice.php)

4.2.5.1代码

4.2.5.2业务处理逻辑流程图


随机点名答题系统(类抽奖系统、在线答题系统、线上答题系统、在线点名系统、线上点名系统、在线考试系统、线上考试系统),是基于php(8.2.11),JavaScrip,MySQL开发的轻量化点名答题系统,分为数据管理和前端两部分。主要解决了随机抽点人员和随机抽点题目结合的业务需求,有很强的实用意义。

1.功能需求

需求点------

对人员进行分组,按分组进行数据准备。

针对以上需求,采取了组别维护和单个人员信息维护的模式,以组别为基本数据容器,在构建组别之后向组别内加入人员。因此,系统设计了【人员分组】和【人员维护】2个功能模块。

【人员分组】作为人员的数据容器出现,是对人员的分组和归类,具有增加分组、编辑分组、删除分组、添加人员、移除人员和查询分组、人员功能。
人员分组
添加人员
移除人员

【人员维护】主要完成人员基本信息的增加、编辑、删除和查询功能。
人员维护

2.数据库设计

设计了人员分组和人员维护2张数据表,人员分组数据表用于存储分组信息,人员维护数据表用于存储人员信息。

表结构:

人员分组表结构


人员维护表结构

3.流程设计

人员管理模块,包括人员维护和人员分组2个模块。基本流程是:首先完成【人员维护】,包括人员的添加、编辑、删除操作,然后在【人员分组】中增加一个分组,选择要维护的分组,即可向分组内添加人员、移除人员、同样我们也可以对人员分组进行增加、编辑和删除操作。

4.关键代码

4.1.人员分组

4.1.1数据请求示意图

4.1.2添加组别(login.php)数据请求代码

javascript 复制代码
//添加分组  ######################################
        $(document).on("click","#button_add_zb",function (){
            if ($("#zb1").val().trim() != ""  && $("#xh1").val().trim() != ""){

                if (isIntNum($("#xh1").val().trim())){
                    $.ajax({
                        method: "post",
                        url: "zuBieService.php",
                        data: {id:"",zb:$("#zb1").val(),fzry:"",xh:$("#xh1").val(),flag:"add"},
                        success: function (result) {
                            if (result == "chongfu"){
                                alert("组别重复");
                            }else if (result == "success"){
                                alert("提交成功");
                                php_reload("ryfz.php","#main_php",{flag:"add"});
                            }else {
                                alert("提交失败");
                            }

                        },
                        error: function(err) {
                            alert("提交失败");
                        }
                    });

                }else {
                    alert("序号必须为正整数");
                }


            }else{
                alert("所有内容不得为空");
            }
        });

4.1.3编辑组别(login.php)数据请求代码

javascript 复制代码
//更新分组  ######################################
        $(document).on("click","#button_update_fz",function (){
            if ($("#zb").val().trim() != ""  && $("#xh").val().trim() != ""){

                if (isIntNum($("#xh").val().trim())){
                    $.ajax({
                        method: "post",
                        url: "zuBieService.php",
                        data: {id:$("#id").val(),zb:$("#zb").val(),fzry:$("#fzry").val(),xh:$("#xh").val(),flag:"update"},
                        success: function (result) {
                            if (result == "chongfu"){
                                alert("组别重复");
                            }else if (result == "success"){
                                alert("提交成功");
                                php_reload("ryfz.php","#main_php",{flag:"add"});
                            }else {
                                alert("提交失败");
                            }

                        },
                        error: function(err) {
                            alert("提交失败");
                        }
                    });

                }else {
                    alert("序号必须为正整数");
                }


            }else{
                alert("所有内容不得为空");
            }
        });

4.1.4加入分组(login.php)数据请求代码

javascript 复制代码
function button_jrfz(sfzh,fzid){
        $.ajax({
            method:"post",
            url:"jrfz.php",
            data:{id:fzid,sfzh:sfzh,flag:"jrfz"},
            success:function (res){
                php_reload("jrfz.php","#main_php",{id:fzid,flag:""})
            }
        });
    }

4.1.5移除分组(login.php)数据请求代码

javascript 复制代码
function button_ycfz(sfzh,fzid){
        $.ajax({
            method:"post",
            url:"ycfz.php",
            data:{id:fzid,sfzh:sfzh,flag:"ycfz"},
            success:function (res){
                php_reload("ycfz.php","#main_php",{id:fzid,flag:""})
            }
        });
    }

4.1.6删除分组(login.php)数据请求代码

javascript 复制代码
function zb_del(id){
        $.ajax({
            method:"post",
            url:"zuBieService.php",
            data:{id:id,zb:"",fzry:"",xh:1,flag:"del"},
            success:function (result){
                if (result == "success"){
                    alert("删除成功");
                    php_reload("ryfz.php","#main_php",{flag:"add"});
                }else {
                    alert("删除失败");
                }
            }
        });
    }

4.1.7 业务处理Service(zuBieService.php)

4.1.7.1代码
php 复制代码
$id = $_POST['id'];
$zb = $_POST['zb'];
$fzry = $_POST['fzry'];
$xh = $_POST['xh'];
$flag = $_POST['flag'];

if ($flag == 'add'){
    $id = time();
}


$fenZuBean = new \bean\FenZuBean();
$fenZuBean->setId($id);
$fenZuBean->setZb($zb);
$fenZuBean->setFzry($fzry);
$fenZuBean->setXh($xh);

$table = "t_zubie";

$data = array(\util\Config::$id=>$fenZuBean->getId(),\util\Config::$zb=>$fenZuBean->getZb(),\util\Config::$fzry=>$fenZuBean->getFzry(),\util\Config::$xh=>$fenZuBean->getXh());
//打开数据库链接
$dbUtil = new \util\DBUtil();
$conn = $dbUtil->connect();

if ($flag == 'add'){//增加人员分组
    $rows = $dbUtil->select($conn,$table," zb = '".$zb."'");
    if (sizeof($rows) > 0){//判断是否重复
        $result = "chongfu";
    }else{
        $dbUtil->add($conn,$table,$data);
        $result = "success";
    }
}elseif ($flag == 'update'){//编辑人员分组
    $rows1 = $dbUtil->select($conn,$table," id = '".$id."'");
    $rows1_zb=$rows1[0];
    $rows1_zb2=$rows1_zb["zb"];
    $rows = $dbUtil->select($conn,$table," zb = '".$zb."'");
    if (sizeof($rows) > 0 and $rows1_zb2 != $zb){//判断是否重复
        $result = "chongfu";
    }else{
        $dbUtil->update($conn,$table,$data," id = '".$id."'");
        $result = "success";
    }

}elseif ($flag == 'del'){//删除人员分组
    $dbUtil->delete($conn,$table," id = '".$id."'");
    $rows = $dbUtil->select($conn,"t_jcsz"," zb like '%".$id."%'");
    if (sizeof($rows) > 0){//判断是否在基础设置中被选择,如果被选择删除基础设置数据
        $dbUtil->delete($conn,"t_jcsz"," zb like '%".$id."%'");
    }
    $result = "success";
}elseif ($flag == 'select'){//查询
    $rows = $dbUtil->select($conn,$table," id = '".$id."'");
    $result = json_encode($rows[0]);
}

//关闭数据库链接
$dbUtil->close($conn);
4.1.4.2业务处理逻辑流程图

4.2. 人员维护

4.2.1数据请求示意图

4.2.2添加人员(login.php)数据请求代码

javascript 复制代码
//添加人员  ######################################
        $(document).on("click","#button_addry",function (){
            if ($("#sfzh1").val().trim() != "" && $("#xm1").val().trim() != ""
                &&  $("#dw1").val().trim() != "" &&  $("#zw1").val().trim() != "" && $("#xh1").val().trim() != ""){

                if (!isValidIDCard($("#sfzh1").val().trim() )){
                    alert("请输入18位身份证号码")
                    return;
                }

                if (isIntNum($("#xh1").val().trim())){
                    $.ajax({
                        method: "post",
                        url: "renYuanService.php",
                        data: {sfzh:$("#sfzh1").val(),xm:$("#xm1").val(),dw:$("#dw1").val(),zw:$("#zw1").val(),xh:$("#xh1").val(),flag:"add"},
                        success: function (result) {
                            if (result == "chongfu"){
                                alert("身份证号码重复");
                            }else if (result == "success"){
                                alert("提交成功");
                                php_reload("rywh.php","#main_php",{flag:"add"});
                            }else {
                                alert("提交失败");
                            }

                        },
                        error: function(err) {
                            alert("提交失败");
                        }
                    });

                }else {
                    alert("序号必须为正整数");
                }


            }else{
                alert("所有内容不得为空");
            }
        });

4.2.3编辑人员信息(login.php)数据请求代码

javascript 复制代码
//更新人员  ######################################
        $(document).on("click","#button_updatery",function (){
            if ($("#sfzh").val().trim() != "" && $("#xm").val().trim() != ""
                &&  $("#dw").val().trim() != "" &&  $("#zw").val().trim() != "" && $("#xh").val().trim() != ""){

                if (!isValidIDCard($("#sfzh").val().trim() )){
                    alert("请输入18位身份证号码")
                    return;
                }

                if (isIntNum($("#xh").val().trim())){
                    $.ajax({
                        method: "post",
                        url: "renYuanService.php",
                        data: {sfzh:$("#sfzh").val(),xm:$("#xm").val(),dw:$("#dw").val(),zw:$("#zw").val(),xh:$("#xh").val(),flag:"update"},
                        success: function (result) {
                            if (result == "success"){
                                alert("提交成功");
                                php_reload("rywh.php","#main_php",{flag:"add"});
                            }else {
                                alert("提交失败");
                            }

                        },
                        error: function(err) {
                            alert("提交失败");
                        }
                    });

                }else {
                    alert("序号必须为正整数");
                }


            }else{
                alert("所有内容不得为空");
            }
        });

4.2.4删除人员(login.php)数据请求代码

javascript 复制代码
function ry_del(sfzh){
        $.ajax({
            method:"post",
            url:"renYuanService.php",
            data:{sfzh:sfzh,xm:"",dw:"",zw:"",xh:1,flag:"del"},
            success:function (result){
                if (result == "success"){
                    alert("删除成功");
                    php_reload("rywh.php","#main_php",{flag:"add"});
                }else {
                    alert("删除失败");
                }
            }
        });
    }

4.2.5业务处理Service(renYuanSevice.php)

4.2.5.1代码
php 复制代码
$sfzh = $_POST['sfzh'];
$xm = $_POST['xm'];
$dw = $_POST['dw'];
$zw = $_POST['zw'];
$xh = $_POST['xh'];

$flag = $_POST['flag'];


$renYuanBean = new \bean\RenYuanBean();
$renYuanBean->setSfzh($sfzh);
$renYuanBean->setXm($xm);
$renYuanBean->setDw($dw);
$renYuanBean->setZw($zw);
$renYuanBean->setXh($xh);

$table = "t_renyuan";

$data = array(\util\Config::$sfzh=>$renYuanBean->getSfzh(),\util\Config::$xm=>$renYuanBean->getXm(),\util\Config::$dw=>$renYuanBean->getDw(),\util\Config::$zw=>$renYuanBean->getZw(),\util\Config::$xh=>$renYuanBean->getXh());
//打开数据库链接
$dbUtil = new \util\DBUtil();
$conn = $dbUtil->connect();

if ($flag == 'add'){
    $rows = $dbUtil->select($conn,$table," sfzh = '".$sfzh."'");
    if (sizeof($rows) > 0){
        $result = "chongfu";
    }else{
        $dbUtil->add($conn,$table,$data);
        $result = "success";
    }
}elseif ($flag == 'update'){
    $dbUtil->update($conn,$table,$data," sfzh = '".$sfzh."'");
    $result = "success";
}elseif ($flag == 'del'){
    $dbUtil->delete($conn,$table," sfzh = '".$sfzh."'");
    $result = "success";
}elseif ($flag == 'select'){
    $rows = $dbUtil->select($conn,$table," sfzh = '".$sfzh."'");
    $result = json_encode($rows[0]);
}

//关闭数据库链接
$dbUtil->close($conn);
4.2.5.2业务处理逻辑流程图
相关推荐
擎云java6 个月前
基于Java在线考试系统系统设计与实现(源码+部署文档)
java·开发语言·在线考试·成绩管理·在线考试系统·考试系统
韩金群9 个月前
基于SpringBoot的在线考试系统
spring boot·在线考试·考试·计算机毕设·考试系统
爱敲代码的学长1 年前
基于springboot实现在线考试平台项目【项目源码+论文说明】
java·spring boot·毕业设计·在线考试·课程设计·网页设计·项目源码
徐新帅1 年前
在线考试系统
数据库·mysql·c#·在线考试