如果在不使用$request变量的情况下对数据进行统计



我正在尝试检查用户是否是管理员,这样我就可以限制其他用户访问该URL,到目前为止,我尝试了以下代码:

public function Adminp(){
$data = ['LoggedUserInfo' =>Utilisateurs::where('id','=',session('LoggedUser'))->first() ];
$utilisateurs = Utilisateurs::all();
$utilisateur->role = $_GET['role'];
if($utilisateur->role == 'Admin'){
return view('Admin.admin-dashboard', $data, compact('utilisateurs'));
}
else{
return abort(404);
}
}

我得到的只是错误

我只是在猜测你在做什么。我假设您只是想看看您从数据库中检索到的用户是否具有您要查找的角色。。。你应该使用身份验证系统和中间件来进行过滤,但

public function Adminp()
{
$user = Utilisateurs::findOrFail(session('LoggedUser'));
if ($user->role == 'Admin') {
return view('Admin.admin-dashboard', [
'LoggedUserInfo' => $user,
'utilisateurs' => Utilisateurs::all(),
]);
}
return abort(404);
}

不过,让我再次强调这一点,您应该使用身份验证系统和中间件来进行过滤,而不是重新发明轮子。

$utilisateurs = Utilisateurs::all();

这将返回Utilisateurs的数组,在下一行中,您试图获得该数组中永远不存在的角色属性,您只需要获得一个用户,而不是所有用户的数组。

最新更新