• ベストアンサー

二重投稿をエラーにする

こんばんは。よろしくお願いいたします。 今、掲示板を作成しているんですが、戻るボタンを押して更新ボタンを押してしまうと二重投稿になってしまいました。 同じ内容がある場合にエラーを出したいと思っているのですが、 その場合の記述はどのように記述したらよろしいんでしょうか??? If文を使うことはわかるのですがどう記述したらよいのかわかりません…。 どなたか教えていただける方がいらっしゃいましたらご指導よろしくおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

私がよくやる方法ですがセッション変数とformにhidden項目を1つ用意し、それぞれに1をセットする。 更新ページでセッション変数に+1する。 受け渡されたhidden項目に+1したものと、セッション変数が同じなら処理を行う。違う場合は戻るボタンで行き来しているはずなのでエラーにする。

natagoo
質問者

お礼

ご丁寧に有り難うございました!

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 方法は色々あるが・・・・じゃあ触りだけ紹介しよう。 1.必ずセッションを開始し、投稿の履歴をセッションに保存。同じ内容の場合は(現在要求されている投稿を)拒否する。  セッションを使うところをどうするかだが、URL埋め込みセッションよりかはやはりCookieセッションの方が良いだろう。とすると、Cookieを受け付けないブラウザでは投稿できなくなる。 2.過去の投稿を毎回調べ、同じ物があれば投稿を拒否する。  こちらの欠点は毎回過去ログを調べるため、サーバの付加も高くなるしレスポンスも悪くなる。過去ログとのマッチング方法も色々あるので調べてみると良いだろう。  正直作りこみとしてはセッションの方が楽だ。二重投稿だと確実に分かるし。

natagoo
質問者

お礼

いろいろやり方があるんですね。 ご丁寧に有り難うございました!

関連するQ&A

専門家に質問してみよう