Я не уверен, как я должен обрабатывать ошибки внутри Slim.Как управлять ошибками в моем Slim-приложении?
Я использую класс с функциями, например. авторизоваться. Когда пользователь вводит неверный пароль, я не уверен, как предоставить их Slim, чтобы они могли отображаться пользователю.
Это то, что я в настоящее время:
Маршрут: функция
$app->post('/submit', function() use ($app) {
$post = (object) $app->request->post();
if($app->user->login($post->log_mail, $post->log_pass)){
$app->setCookie('mail', $post->log_mail, '2 minutes');
$app->redirect('/inbox');
}else{
// redirect
// display errors set by the $app->user->login() function.
}
});
Класс:
public function login($username, $password){
if(!empty($username)){
if(!empty($password)){
if($this->numrows($username, $password)){
// login success
return true;
}else{die('credentials');}
}else{die('password');}
}else{die('username');}
}
Как использовать печенье:
$app = new \Slim\Slim(
[
'debug' => true,
'mode' => 'development',
'cookies.encrypt' => true,
'cookies.secret_key' => 'supersecret',
]);
$app->setCookie('something', 'something' '2 minutes');
Где я я в настоящее время использую die(), я хотел бы установить фактическую ошибку, чтобы представление Slim могло ее отображать. Я просмотрел функцию Slim Flash, но пока не работает.
Какая версия Slim вы используете? –
Slim 2 Я считаю, что я заметил, что теперь есть третий, но еще не обновлен – Pepzter9