質問箱/4129

カテゴリ
サマリ#comment、 でIEの更新(再描画)ボタンを押すと二重投稿される
バージョン1.4.x
投稿者kahata
状態完了
投稿日2007-07-03 (火) 10:44:00

質問

拙作、自作プラグイン/include_module.inc.phpの使い方を模索しているkahataです。

プラグイン、#commentについて質問させていただきます。
コメントを投稿(挿入)した直後に、インターネットエクスプローラ等の更新(再描画)ボタンを押すと、情報の再送信を警告するポップアップが出て、再送信を強行すると以下のメッセージが出て二重投稿されてます。

練習ページ で【更新の衝突】が起きました
あなたがこのページを編集している間に、他の人が同じページを更新してしまったようです。
コメントを追加しましたが、違う位置に挿入されているかもしれません。

#articleでも同様の現象が起きますが、編集画面が出て二重投稿はされないようです。
投稿のときのpostをそのまま再送信しているためこの現象が起きると思うのですが、この二重投稿を防止する方法はないでしょうか? #commentなら二重投稿を削除すれば済みますが、一般的な掲示板等のアプリケーションでpukiwikiのpost,getを使う場合、更新ボタンを押す度に多重投稿になっては困ります。
色々コードをいじりましたが解決できません。
以下のコードが関係していると思いますが、ifの条件文の中身がよく理解できません。

	$title = $_title_updated;
	$body = '';
	if (md5(@join('', get_source($vars['refer']))) != $vars['digest']) {
		$title = $_title_comment_collided;
		$body  = $_msg_comment_collided . make_pagelink($vars['refer']);
	}

	page_write($vars['refer'], $postdata);

このコードの意味も併せてご教授下さい。宜しくお願いします。

回答


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-11-23 (木) 19:14:24
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.253 sec.

SourceForge