我读过的关于Slim Framework身份验证的大多数帖子都面向API基本身份验证。
我只需要一个带角色的简单登录/注销,但我对如何实现某种中间件感到困惑。网络并不打算用于制作。
这是我到目前为止的登录路线,
$app->get('/login', function() use ($app) {
$app->render('login.html');
})->name('login-form');
$app->post('/login', function() use ($app) {
$req = $app->request;
$user= $req->params('user');
$pass = $req->params('pass');
try {
$query = $app->db->prepare("SELECT user, pass FROM users
WHERE user = :user AND pass = :pass
LIMIT 1");
$query->execute(
array(
':user' => $user,
':pass' => md5($pass)
)
);
$result = $query->fetch();
}
catch (PDOException $e) {
$app->flash('error', 'db error');
}
if ( empty($result) ) {
$app->flash('error', 'wrong user or pass');
$app->redirect('/login');
}
$app->redirect('/');
})->name('login');