前提・実現したいこと
お問い合わせフォームを作っています。
よくある画面遷移として、①入力画面、②確認画面、③完了画面があると思います。
一般的に、「①入力画面」で入力した値を「②確認画面」で表示し、問題なければ「③完了画面」に
「完了しました」の一文で終わるケースがほとんどかと思います。
ただ、今回「③完了画面」でも「②確認画面」と同じく入力結果を表示させたいのですが、
完了画面まで同じ値を引き継ぐとなると、どのように実装するのが良いでしょうか?
発生している問題
確認画面で入力した結果が表示されており、「送信する」を押すと完了画面では値が空白となっている。
該当のソースコード
Controllerは以下のようになっています。
①入力画面
public function form(Request $request) { return view('form'); }
②確認画面
public function confirm(Request $request) { $this->validation($request); $data = new Data($request->all()); return view('confirm', compact('data')); }
③完了画面
public function complete(Request $request) { $data = new Data($request->all()); return view('complete', compact('consultation')); }
試したこと
クラス内に値を保持させようとしましたが、うまくいきませんでした。
private $value; public function confirm(Request $request) { $this->validation($request); $data = new Data($request->all()); $this->value = $data->input('hogehoge'); return view('confirm', compact('data')); } public function complete(Request $request) { return view('complete') ->with('value', $this->value); }
補足情報
Laravelのバージョンは5.6です。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/31 05:08