OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

リロードで再び書き込まれてしまう

  • 暇なときにでも
  • 質問No.162119
  • 閲覧数97
  • ありがとう数8
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 59% (194/328)

掲示板で、投稿後にリロードすると
さっき投稿した内容が再び書き込まれてしまいます。
これを防ぐには、open OUT で書き込みをして
close OUT をした後に、SOPTデータを消す記述を
書けばいいんだと思います。
その記述を教えて下さい。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル5

ベストアンサー率 33% (1/3)

SOPTデータの意味が分かりませんが。。

> open OUT
> close OUT
一瞬何かと思いました。ファイルハンドルだったんですね。
普通にファイルを開いて、閉じてとか書いた方がいいですよ。

> 掲示板で、投稿後にリロードすると
> さっき投稿した内容が再び書き込まれてしまいます。
良くありますね。

書き込み処理が終わったら、
print "Location: 掲示板のURL\n\n";
とするのを自分では良く使います。
お礼コメント
A__

お礼率 59% (194/328)

ありがとうございます。
Location: で別ページ飛ばす方法もありますよね。
でも、それをせずに、bbs.cgi で送信して
bbs.cgi に飛ばす方法で、さっきの送信した
POST の情報を消すことはできませんか?
$|=1; とか close; とか書いてみたけど、
それをすると bbs.cgi でHTMLが表示されなくなって
うまくいきませんでした。
投稿日時 - 2001-11-04 20:07:04
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル8

ベストアンサー率 53% (17/32)

全然参考にならないかも知れませんが一応書き込みます。 まず、何故リロードすると二重書き込みになるかって事ですがリロード事態が ブラウザが前回行ったことを再度実行すると言う事ですので書き込みの内容を 覚えているブラウザが再び同じ処理を行い書き込みをしてしまいます。 防ぐ方法としてはCGIでは無くMETAタグで勝手にブラウザに書き込み以外の処理を させれば良い訳です..... 書き込み完了画面 ...続きを読む
全然参考にならないかも知れませんが一応書き込みます。
まず、何故リロードすると二重書き込みになるかって事ですがリロード事態が
ブラウザが前回行ったことを再度実行すると言う事ですので書き込みの内容を
覚えているブラウザが再び同じ処理を行い書き込みをしてしまいます。

防ぐ方法としてはCGIでは無くMETAタグで勝手にブラウザに書き込み以外の処理を
させれば良い訳です.....
書き込み完了画面を作成しヘッド内に下記の記述をすればOK!?
<head>
<base target="_self">
<title>JUMP</title>
<meta HTTP-EQUIV="Refresh" CONTENT="0;URL=http://********">
</head>

こうすればブラウザが勝手に次の処理を行いリロードしても二重書き込みが防げるはずです。
お礼コメント
A__

お礼率 59% (194/328)

ありがとうございます。
METAタグの方法をやってみたけど、できませんでした。
リロードで再び書き込まれました。
投稿日時 - 2002-01-18 23:30:16


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ