複数の「ステージ」が含まれる非常に複雑なフォームがあります。
各ステージには、ユーザーが無数の行を追加するフォームがあります。ユーザーが「続行」をクリックするたびに、これらのフォームはデータベースに保存され(各「ステージ」にはデータベース内に独自のテーブルがあります)、次のステージが表示されます。
以前のフォームを取得するためにユーザーが「戻る」を押すのが心配です(ユーザーがミスなどをした場合)。
この問題を解決するために私が考えることができる唯一の3つの方法は次のとおりです。
- 人々が押し返すことを禁止します。もしそうなら、最初のフォームに直接送ってやり直してください。
- フォームページが要求されたら、データベースを確認してください。すでに行がある場合は、それらの行を削除して、現在のフォームでユーザーを再起動します。
- [可能性-codeigniterのform_validationライブラリを使用しているため、これはさらに困難になります]ユーザーが押し返したときにデータベースを確認します。現在の値を取得し、デフォルト値としてフォームに入力します。次に、送信時に行を削除し、フォームの値に置き換えます。
どうやってこのような形をしますか?いくつかのフォームのためだけに、ロジックの量が本当にばかげています!はは、これを行うためのより良い方法はありますか?上記の3番が最良の選択肢だと思いますか?
ありがとう