我找不到任何获得用户权限的好方法
我使用了多个SQL查询来根据用户的角色获取用户数据,但我不喜欢每次用户点击某个东西时都询问权限的想法。。。但我也不喜欢从SQL获得所有权限并在“会话”中设置所有权限的想法
至少有12列(权限)。我使用4个表,用户,用户角色,角色,最后是权限
//...
$permissions = sqlSelect($conn, '
SELECT * FROM permissions
INNER JOIN roles
ON permissions.role_id = roles.id
INNER JOIN users_role
ON permissions.role_id = users_role.role_id
WHERE users_role.user_id = ?', 'i', $row['id']);
$user_permissions = array();
while ($permission_row = $permissions->fetch_assoc()) {
unset($permission_row['id_role']);
$user_permissions[] = $permission_row;
}
$_SESSION['logged'] = true;
$_SESSION['user_permissions'] = $user_permissions;
//...