84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
SQL テーブルにテキストを送信する単純なフォームがあります。問題は、ユーザーがテキストを送信した後、フォームに再度入力しなくても、ページを更新してデータを再送信できることです。テキストを送信した後にユーザーを別のページにリダイレクトできますが、ユーザーは同じページに留まりたいと考えています。
各ユーザーに一意のセッション ID を与え、それを別の値と比較すると、抱えていた問題が解決するという記事を読んだ記憶がありますが、それがどこにあったか忘れてしまいました。
また、JavaScript メソッドwindow.history.replaceStateを使用すると、更新ボタンや戻るボタンでの再送信を防ぐことができることも指摘しておきます。
window.history.replaceState
概念実証: https://dtbaker.net/files/Prevent-post-resubmit.php (リンクは無効になりました)
私は依然として Post/Redirect/Get メソッドをお勧めしますが、これは新しい JS ソリューションです。
パブリッシュ/リダイレクト/取得パターンを使用します。http://en.wikipedia.org/wiki/Post/Redirect/Get
私の Web サイトでは、メッセージを Cookie またはセッションに保存し、投稿後にリダイレクトし、Cookie/セッションを読み取り、そのセッションまたは Cookie 変数の値をクリアします。
また、JavaScript メソッド
リーリーwindow.history.replaceState
を使用すると、更新ボタンや戻るボタンでの再送信を防ぐことができることも指摘しておきます。概念実証: https://dtbaker.net/files/Prevent-post-resubmit.php(リンクは無効になりました)私は依然として Post/Redirect/Get メソッドをお勧めしますが、これは新しい JS ソリューションです。
パブリッシュ/リダイレクト/取得パターンを使用します。http://en.wikipedia.org/wiki/Post/Redirect/Get
私の Web サイトでは、メッセージを Cookie またはセッションに保存し、投稿後にリダイレクトし、Cookie/セッションを読み取り、そのセッションまたは Cookie 変数の値をクリアします。