#author("2017-09-11T22:11:05+09:00","","") #author("2017-09-11T22:11:32+09:00;2017-09-11T22:11:05+09:00","","") * commentプラグインでコメント記入後の、アドレスバーに表示されるアドレスが正しくない [#s4b5c091] - ページ: [[BugTrack2]] - ページ: [[BugTrack]] - 投稿者: [[ぃぉぃぉ]] - 優先順位: 低 - 状態: 提案 - 状態: 完了 - カテゴリー: プラグイン - 投稿日: 2007-05-24 (木) 20:06:47 - バージョン: 1.4.7 - リリース予定バージョン: 1.5.2 **現象 [#m2e3eab9] commentプラグインでコメント記入後、アドレスバーに表示されるアドレスが正しくありません。ページ名が表示されず、index.phpとなります。&br; **対策案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}; - 私の周りでもよく問題になっていました(コメント入力後、ページURLのつもりでトップページのURLをコピーしてしまう)。対策案1 を実装しました commit:e90ad60c89 -- [[umorigu]] &new{2017-09-11 (月) 22:11:05}; #comment