- 追加された行はこの色です。
- 削除された行はこの色です。
* commentプラグインでコメント記入後の、アドレスバーに表示されるアドレスが正しくない [#s4b5c091]
- ページ: [[BugTrack2]]
- 投稿者: [[ぃぉぃぉ]]
- 優先順位: 低
- 状態: 提案
- カテゴリー: プラグイン
- 投稿日: 2007-05-24 (木) 20:06:47
- バージョン: 1.4.7
**現象 [#m2e3eab9]
commentプラグインでコメント記入後、アドレスバーに表示されるアドレスが正しくありません。ページ名が表示されず、index.phpとなります。&br;
**対策案 [#r184daf0]
**対策案1 [#y6d8ff5d]
function plugin_comment_convert()の一行を修正。これだけでよかったのですね。
- $script = get_script_uri();
$s_page = htmlspecialchars($vars['page']);
+ $script = get_script_uri() . '?' . $s_page;
修正による動作の違いは特にありません。
**対策案2 [#r184daf0]
記入時に「~を更新しました」や、「更新の衝突を検知しました」といったメッセージが表示されなくなります。
function plugin_comment_action()の最後の部分を
page_write($vars['refer'], $postdata);
+ pkwk_headers_sent();
+ header('Location: ' . get_script_uri() . '?' . rawurlencode($vars['refer']));
+ exit;
- $retvars['msg'] = $title;
- $retvars['body'] = $body;
- $vars['page'] = $vars['refer'];
- return $retvars;
}
としたら良いのでは。
***メリット [#sdba5f2f]
-コメント書き込み後、アドレスバーに正しいアドレスが表示されるようになる。
-コメント書き込み後、F5キーで更新したりしたときに、同じメッセージが再度書かれることが無くなる。
***デメリット [#o46595cf]
-書き込み後、再度ページを読み直すので、サーバーの処理量、通信量が増える。(通信量といってもページリクエスト分だけかな。)
**最初に投稿した間違った情報 [#q04f6df8]
function plugin_comment_action()のreturn $retvars;の前に
header('Location: ' . get_script_uri() . '?' . rawurlencode($vars['page']));
を入れてはいかがでしょうか。
headerについてよく分かっていないので、これでよいか自信なし^^;
--------
- 他のプラグインを見たり、Webを調べたりして、header()の使い方がわかってきたので修正。 -- [[ぃぉぃぉ]] &new{2007-06-26 (火) 02:50:16};
-- 衝突が起こった場合衝突メッセージを出したりするので、衝突などがなく正しく更新された場合 header で飛ばす、としないといけないと思われます -- &new{2007-06-26 (火) 05:47:17};
- 確かに、更新メッセージとかも出なくなりますね。個人的には書き込んだ後F5で更新して、新しいメッセージが読みたかったりするので、それも有りかな、とも。ま、仕様が変わっちゃいますね。 -- [[ぃぉぃぉ]] &new{2007-06-26 (火) 12:26:15};
#comment