Я хотел добавить функцию в свое приложение Slim, но я недостаточно знаком с PHP, чтобы знать, как лучше всего структурировать что-то подобное. Это не готовый к производству код, и я, очевидно, не буду жестко кодировать свое имя пользователя и пароль в сценарии. Я сделал это просто, чтобы проиллюстрировать концепцию.
$options = array(
'username' => 'admin',
'password' => 'password'
);
$app = new Slim(array(
'view' => new TwigView()
));
$app->config($ptions);
function authenticate($app, $username, $password) {
if($username==$app->config('username') && $password==$app->config('password')){
return true;
} else {
return false;
}
}
$app->get('/', function () use ($app) { // ... }
// ... other routes
$app->post('/login', function() use ($app) {
$username = $app->request()->post('username');
$password = $app->request()->post('password');
if(authenticate($app, $username,$password)) {
$app->redirect('/');
}
$app->redirect('/login');
});
$app->run();
Есть ли смысл передавать $app
в authenticate()
или есть лучший способ? authenticate()
будет не промежуточным программным обеспечением, а функцией, вызываемой в маршруте POST для нажатия кнопки отправки в форме входа.
authenticate
. Из того, что он показывает, почему он должен быть неправильным? Что может быть лучше работы? - person hakre   schedule 06.10.2011