たとえば、何かの予約を行い、予約した結果を指す一意な番号を画面に出力することにします。 登録を行う部分のロジックは(リスト1)のようになります: 1. データベースに情報を登録する 2. 番号をふる 3. 画面に番号を表示する (リスト1) 2度押しの問題は A. 確定ボタンの複数回押下 B. 完了画面の再読込 の2点があります。 対策として最も簡単なものはクライアントサイドスクリプトを用いた対策です。A. を防ぐことができます。 <input type="submit" onclick="this.disabled=true;this.form.submit()"> ただし、スクリプトは簡単に迂回ができてしまいます。 そのほかの対策としては、HTTP Location ヘッダを用いたリダイレクトを用いた対策です。 再読込を行った際には、直前のリクエストが繰り返されます。 確認画面 → (