silexでサイトを作成しようとしているものです。
ServiceProviderを使ってコントローラーで処理→画面表示をしているのですが、
ログイン画面でフォーム入力した値がサーバーにない場合、エラー画面に飛ばす処理を書きました。
//ログインコントローラー $controllers->match('/login', function(Application $app, Request $request) { if ($request->getMethod() == 'POST') { $form = array( 'mail' => $request->get('email'), 'name' => $request->get('name'), ); //バリデーション処理 //サーバーに値がなかった $errors = "データがありません"; if (empty($errors)) { //エラーじゃなかったらトップ画面へ } else { //エラーだったらエラー画面へ return $app->redirect($app['url_generator']->generate('error')); } } return $app['twig']->render('login.twig'); })->bind('login'); //エラーコントローラー $controllers->match('/error', function(Application $app, Request $request) { return $app['twig']->render('error.twig'); })->bind('error');
ログインコントローラーの$errorという値をエラーコントローラーに渡す方法がわからず、苦戦しています。
ルートに含めず渡す方法(/error/メッセージ のような形ではない方法)をご教授下さい。
あなたの回答
tips
プレビュー