2012年11月10日

PHPで2重送信対策

WEBアプリを作る上で二重送信対策は重要です。

今回はPHPを使った2重送信の対策(リロード対策)をご紹介します。

わかりやすくサンプル載せます。

実行ボタンを押した後にreloadボタンを押してみてください。
そうすると「リロードされましたと」出てきます。


サンプルではサブミット後ページををリロードさせるとエラーを返しています。


動きとしては、

1)PHPで乱数を生成
2)SESSIONとPOST(hidden)に生成した乱数を格納
3)SESSIONとPOSTに同じ値が格納されているかチェック
4)同じ値が格納されている場合、正常メッセージを表示
5)セッション削除
6)同じ値が格納されていない場合、エラーメッセージを表示
7)セッション削除


という流れでやってます。

画面


チェック処理


こんな感じで結構簡単に設置できます。
ラベル:プログラム
posted by きむのしん at 23:51| Comment(0) | PHP | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は1年以上新しい記事の投稿がないブログに表示されております。