質問: Laravel勉強で問題集のWebアプリケーションを作成したく考えています。 実現できるそうでできないので、質問させていただきます。 以下のような画面レイアウトで[前へ]および[次へ]を押した際、 radioボタンのどれが選択されていたか記憶しつつページを遷移させたいです。 【画面レイアウト例】(問題が50問あるとする) ■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 問題1 かわうそは動物ですか? ○ YES ○ No [前へ][次へ] ■■■■■■■■■■■■■■■■■■■■■■■■■■■■ GETかPOSTで値をもたせてやっていけばできそうですが、 実現できるコードまでたどりつけない状態です。 ヒントかサイトを教えていただけると幸いです。 よろしくお願いいたします。
回答: これはページネーションとは違う要件に思います。 全体をformで囲って送信していけばいいだけです。 buttonタグにもnameやvalueが設置できますが、submitにして同じnameを与えておけば、 押したボタンのvalueのみが送信されます。 そこで「今何問目か」と「どれが選択されたか」と「次へが押されたor前へが押された」を送信してくことで対応が可能です。 「○問目の答えで送信されたのはXX」というのを持っておくためには下記のいずれかの方法で実現可能と思います。 * セッションに持っておく * LocalStorageなどクライアント側で記録する(問題量次第ではCookieとかでも可) * 「未完(答えあわせ前)の問題グループ」として都度答えをDBに更新 「何問目か」がわかって「次」「前」どちらがおさえれたか分かっていれば、リダイレクトすればいいだけなので、こちらは簡単ですね。いわゆるページネーションとはちょっと違った形です。