alert('角色名称不能为空');location.href='system_manage.php?tab=role';"; exit; } if ($roleId == 0) { mysqli_query($conn, "INSERT INTO sys_role(role_name) VALUES('$roleName')"); $roleId = mysqli_insert_id($conn); } else { mysqli_query($conn, "UPDATE sys_role SET role_name='$roleName' WHERE id=$roleId"); mysqli_query($conn, "DELETE FROM sys_role_permission WHERE role_id=$roleId"); } foreach ($pages as $page) { $page = mysqli_real_escape_string($conn, $page); mysqli_query($conn, "INSERT INTO sys_role_permission(role_id,page_key) VALUES($roleId,'$page')"); } echo ""; exit; } // 删除角色 if (!empty($_GET['del_role'])) { $delId = intval($_GET['del_role']); mysqli_query($conn, "DELETE FROM sys_role_permission WHERE role_id=$delId"); mysqli_query($conn, "DELETE FROM sys_role WHERE id=$delId"); header("Location: system_manage.php?tab=role"); exit; } // 编辑角色数据 $editRole = ['id'=>0,'role_name'=>'','perms'=>[]]; if (!empty($_GET['edit_role'])) { $eid = intval($_GET['edit_role']); $er = mysqli_fetch_assoc(mysqli_query($conn, "SELECT * FROM sys_role WHERE id=$eid")); if ($er) { $editRole = $er; $permRes = mysqli_query($conn, "SELECT page_key FROM sys_role_permission WHERE role_id=$eid"); while ($p = mysqli_fetch_assoc($permRes)) $editRole['perms'][] = $p['page_key']; } } // 角色列表 $roleList = []; $roleRes = mysqli_query($conn, "SELECT * FROM sys_role ORDER BY id DESC"); while ($r = mysqli_fetch_assoc($roleRes)) $roleList[] = $r; // ========== 用户操作逻辑 ========== // 保存用户 if ($_POST['act'] == "save_user") { $uid = intval($_POST['user_id'] ?? 0); $username = trim($_POST['username']); $realName = trim($_POST['real_name']); $roleId = intval($_POST['role_id']); $pwd = trim($_POST['password']); $status = intval($_POST['status']); if (empty($username) || empty($realName) || $roleId == 0) { echo ""; exit; } if ($uid == 0) { if (empty($pwd)) { echo ""; exit; } $pwdMd5 = md5($pwd); mysqli_query($conn, "INSERT INTO sys_user(username,password,real_name,role_id,status,is_admin) VALUES('$username','$pwdMd5','$realName',$roleId,$status,0)"); } else { $updateSql = "UPDATE sys_user SET username='$username',real_name='$realName',role_id=$roleId,status=$status WHERE id=$uid"; if (!empty($pwd)) { $pwdMd5 = md5($pwd); $updateSql .= ",password='$pwdMd5'"; } mysqli_query($conn, $updateSql); } echo ""; exit; } // 删除用户 if (!empty($_GET['del_user'])) { $delId = intval($_GET['del_user']); mysqli_query($conn, "DELETE FROM sys_user_msg WHERE user_id=$delId"); mysqli_query($conn, "DELETE FROM sys_user WHERE id=$delId"); header("Location: system_manage.php?tab=user"); exit; } // 用户下拉角色选项 $roleOptionHtml = ""; $roleDropRes = mysqli_query($conn, "SELECT id,role_name FROM sys_role"); while ($r = mysqli_fetch_assoc($roleDropRes)) { $roleOptionHtml .= ""; } // 用户列表 $userList = []; $uRes = mysqli_query($conn, "SELECT u.*,r.role_name FROM sys_user u LEFT JOIN sys_role r ON u.role_id=r.id ORDER BY u.id DESC"); while ($u = mysqli_fetch_assoc($uRes)) $userList[] = $u; // 编辑用户数据 $editUser = ['id'=>0,'username'=>'','real_name'=>'','role_id'=>0,'status'=>1]; if (!empty($_GET['edit_user'])) { $eid = intval($_GET['edit_user']); $eu = mysqli_fetch_assoc(mysqli_query($conn, "SELECT * FROM sys_user WHERE id=$eid")); if ($eu) $editUser = $eu; } // 全部页面权限清单 $allPagePerms = [ ['key'=>'dashboard','name'=>'告警总览'], ['key'=>'work_order','name'=>'工单系统'], ['key'=>'disk','name'=>'磁盘容量'], ['key'=>'history_query','name'=>'历史查询'], ['key'=>'smtp_config','name'=>'消息通知配置'], ['key'=>'system_manage','name'=>'系统权限管理'], ]; mysqli_close($conn); ?>