**[[質問箱3/458]] [#v1d8d17c]
#author("2018-03-11T18:41:31+09:00;2009-03-08T23:40:28+09:00","","")
**[[質問箱/3458]] [#v1d8d17c]
|RIGHT:70|LEFT:410|c
|~カテゴリ||
|~サマリ|Recent表示について|
|~バージョン|1.4.7|
|~投稿者|[[ちばば]]|
|~状態|質問|
|~投稿日|&new{2006-07-19 (水) 21:54:55};|
***質問 [#yc401a57]
1.4.5_1から1.4.7へバージョンアップしたのですが、メニューバーにおいての#recentの表示(最新の○件部分の表示)がうまくいきません。
cache/recent.dat をのぞいたところ、最新の更新ファイルのリストが最終行に追記されていました。ホントはファイルの最初の行に追記されるべきものですが。。
これはバージョン1.4.7で変更のあったrecentのバグなのでしょうか?
どなたかわかる方がいましたら教えていただけますでしょうか?宜しくお願い致します。

***回答 [#ia630bb7]
- 一度消してみる(名前を変えてみる)とどんな感じでしょう? -- [[teanan]] &new{2006-07-20 (木) 01:32:56};
- teananさん、回答ありがとうございます。消したりもしてみました。一旦きれいなリストが出てきて正常に動いているように見えるのですが。。その後にページを編集したり、新規作成したりすると、やはりその編集したファイルはRecent表示には出ず、cache/recent.datの最後の行に追加されています。 -- [[ちばば]] &new{2006-07-20 (木) 08:47:08};
- 1.4.6におとしました。正常に動作しています。1.4.7で改善されたrecent周りでおかしいところがあるのかもしれませんね。とりあえず、動いたので当分は1.4.6にしておこうと思います。 -- [[ちばば]] &new{2006-07-20 (木) 10:45:50};
- WindowsXPにて1.4.7-eucを新規に立ち上げてみましたが正常に表示されますね。 -- [[ぽちたま]] &new{2006-07-20 (木) 20:29:56};
- pukiwiki.ini.phpの$maxshow の値がcache/recent.datの行数と同じか少ない時に問題が起こる模様です。(削除がうまくいってない?) -- [[まーる]] &new{2006-09-11 (月) 03:18:02};
- なおApacheレンタルサーバーでPHPのバージョンは%%4.3.3%%4.3.11((2006-09-22訂正))です。 -- [[まーる]] &new{2006-09-11 (月) 14:04:12};
- CVSを利用してチェックした結果lib/file.php Rev1.59よりRecentがおかしくなったのを確認しました。 -- [[まーる]] &new{2006-09-11 (月) 17:48:45};
- 1.4.7に含まれるファイルの修正で動作させる場合はfile.phpの377行目を
	if ($abort) {
から
	if (($abort) || (! $abort)) {
に変更すると別の問題があるかもしれませんが、暫定的に正常に表示できます。 -- [[まーる]] &new{2006-09-11 (月) 21:12:15};
- 昨日の修正方法では、件数が増えたときにも強制的に1.4.6で使用していたルーチン((こちらのほうが件数が増えたときに重いらしい))に飛ばすものでしたが、次の方法でやるほうが適切ではないかと思いますので、書き込みます。上記の修正を行った場合はまず元に戻した後に((戻さないとこの修正は無意味))、file.phpの%%362行目付近%%367行目付近((2006-09-18修正))を
	// Check
	$abort = count($recent_pages) < $maxshow;
	
	if (! $abort) {
		// Write
		ftruncate($fp, 0);
		rewind($fp);
に
		arsort($recent_pages, SORT_NUMERIC);
を追加して
	// Check
	$abort = count($recent_pages) < $maxshow;
	
	if (! $abort) {
		arsort($recent_pages, SORT_NUMERIC);
		// Write
		ftruncate($fp, 0);
		rewind($fp);
に変更するとよい模様です。これも暫定の修正ですが、昨日の方法に比べると軽くなるのではないかと思います。 -- [[まーる]] &new{2006-09-12 (火) 22:32:14};
- 前回の修正位置だと、項目数が少ないときにも無駄に並び替えを行うので位置を変更しました((なおソース部分は挿げ替えました))。 -- [[まーる]] &new{2006-09-18 (月) 18:01:39};
- 改めて上記の修正を行う前の状態と行った状態のものを新規設置してそれぞれ$maxshow=30にして実験してみました。そのときのcache/recent.datの先頭と最後を次に示します。 -- [[まーる]] &new{2006-09-22 (金) 00:29:12};
|修正前|修正後|
|1158862904	test4|1158863183	test7|
|1158862830	test3|1158863115	test6|
|1158862781	test2|1158863052	test5|
|1158862702	test1|1158862905	test4|
|1158856879	YukiWiki|1158862831	test3|
|1158856877	WikiName|1158862782	test2|
|1158856875	WikiEngines|1158862703	test1|
|1158856874	SandBox|1158857484	YukiWiki|
|>|中略|
|1158856823	WikiWikiWeb|158857447	Help|
|1158856821	BracketName|1158857445	FrontPage|
|1158863051	test5|1158857443	FormattingRules|
|1158863115	test6|1158857426	WikiWikiWeb|
|1158863182	test7|1158857424	BracketName|
- 関連: [[dev:BugTrack2/151]], [[dev:BugTrack2/196]] --  &new{2009-03-08 (日) 23:40:28};

#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.043 sec.

OSDN