Это базовый контроллер.
Если нет сессии админа, то редиректим на страницу авторизации.
public function __construct()
{
try {
if ( !isset($_SESSION["admin"]) ) {
$this->redirect("/auth");
throw new \Exception("Ошибка доступа");
}
$this->view = new View();
}
catch(\Exception $e) {
echo $e->getMessage();
}
}
Если человек обходит редирект, то видит текст исключения и фатальную ошибку, так как объект View() не создается.
это базовый вид:
$this->view = new View();
в других контроллерах(например авторизации) работает так:
public function index() {
//...
$this->view->render("site/auth", ["model" => $model], "auth");
}
Хватит ли этого для защиты? Распределение по правам доступа в админке мне не нужно.