- ベストアンサー
チェックボックスのvalue値のチェック
POSTされたチェックボックスの値の検証はどのようにしていますか? 私はチェックボックスの表示とともにvalue値をセッションに入れといて、送信先のページで、POSTされたvalue値がセッションに含まれていればOK、含まれていなければイタズラと判定しているのですが、 もっと簡単にすむ方法があれば教えていただきたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「セッションと比較」という部分が、イマイチ状況が想像できません。 いろんな画面から同じパラメータ名で画面遷移する可能性がある、ということですか? POSTされたvalue値をそのまま使うような処理ならば、その方法でいいと思いますが、もし単にチェックされているかを見るだけ&チェックする値の範囲がわかるなら、無理にセッションを使わずに遷移先でチェックする値を記述してチェックする形でもいいと思います。 ただセッションだと、時間が経つと中身が消えるという懸念もあるので、それは使用する機能と相談ということで(^-^;
その他の回答 (1)
- mpx
- ベストアンサー率71% (149/209)
回答No.2
> POSTされたチェックボックスの値の検証はどのようにしていますか? 私の場合は、POST先のスクリプトは決まっているので、 どのようなValue値が送られてくるのかは分かっています。 有効か否かは、その値の一致をPOST先のスクリプトで確認する だけです。セッションで管理しても信頼性は変わらないと思います。 SPAM等のイタズラを防止したいときは、CAPTCHAを使うか javascriptを使ってhidden属性のパラメータを返送させるなどの 難読化させる手を使っています。
補足
なるほど、value値が固定ならセッションは要らないでしょうね。 私の場合はvlaue値にDBのテーブルからとってきたIDを埋め込んだりしてまして、それをPOST先でまたDBアクセスして存在するIDかどうか検証するのは面倒だなぁ…と思いまして。