自分で掲示板サービスを作った時フォームが再送信されないよう、PHPで値を受け取った後locationを使い、二重投稿を防ぐことを覚えてました。ただそもそもどうしてフォームが再送信されるのかが分からなくて質問を投稿しました。
<?php if($_SERVER['REQUEST_METHOD']=='POST'){ echo $_POST['text']; } ?> <html> <body> <form action="" method="post" enctype="multipart/form-data"> <textarea name="text"></textarea> <input type="submit"> </form> </body> </html>
フォームに「あ」と打ち込んでサブミットボタンを押すと、画面に「あ」と表示されますよね。その後に更新ボタンを押そうとするとフォームが再送信されますよね。
ただ更新ボタンをおそうとしていたページに、ブックマークから飛ぶとフォームの再送信がされませんよね。一体どうしてなのでしょうか?
(よく分からないんですけど、locationやブックマークはマッサラな状態でページを開いてくれて、更新ボタンは何かしらの値を保持したままページを開こうとするからフォームが再送信されてしまう。こんな感じのすごい漠然としたイメージはあるんですけど具体的なことがよく分からなくて...。)

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。