CGI-BBS > 電子掲示板 > 簡易BBS > BBSで投稿された文章の並び方を変えたい!


カレッヂ
カレッヂ


質問者 とし  投稿日 4/15(日) 07:05:51
はじめまして。

えーっと、BBS2000のレスって新しく投稿されたものが上に来てしまうじゃないですか。
あれを古いものから順に並べることはできますか?
cgi内のどこをどのように変更すればいいのでしょうか。

多分

#--- 返信部分 ---#

foreach $res_file (sort { (split(/\./,$b,3))[1]<=>(split(/\./,$a,3))[1]; } split("\0",$RESP{$number})) {

($number,$num,$ext2) = split(/\./,$res_file,3);
$number = "$number\.$num";

undef %FILE;
$head_end = 0;
if (open(IN,"$base_path$res_file")) {

while (<IN>) {

if ($head_end) { $FILE{'value'} .= $_; next; }
elsif (/^$/) { $head_end = 1; }

s/\n//g
($key,$val) = split(/\t/);

$FILE{$key} .= "\0" if (defined($FILE{$key}));
$FILE{$key} .= $val;
}
close(IN);
}
else { next; }

ここのどこかだと思うんですが‥‥。分かる方いらっしゃいましたら教えてください。

回答者 中級者  [削除]  投稿日 4/15(日) 12:42:58
>えーっと、BBS2000のレスって新しく投稿されたものが上に来てしまうじゃないですか。
>あれを古いものから順に並べることはできますか?
>cgi内のどこをどのように変更すればいいのでしょうか。

ご指摘の型式(BBS2000)は返信機能がありませんのでフォトメっ!(minibbs-ex-
1.17/bbs.cgi)を意味しているものと存じます。

一応それが事実であるかどうかスクリプトのチェックをして確認出来ましたので返信順序の
手続きは以下のようにご説明申し上げます。

foreach $res_file (sort { (split(/\./,$b,3))[1]<=>(split(/\./,$a,3))[1]; } split("\0",$RESP{$number})) {



foreach $res_file (sort { (split(/\./,$a,3))[1]<=>(split(/\./,$b,3))[1]; } split("\0",$RESP{$number})) {

aとbを入れ替えただけです。
回答者 羊相談員  [削除]  投稿日 4/15(日) 16:22:16
以前、「いのちゃん」という方がこの掲示板で活動していましたが
言動が悪く管理人さんから利用停止を宣告されました。
「いのちゃん」もそれを承諾しました。
しかし、承諾したにも関わらず今度は「中級者」という名前で
あたかも別人のように振舞っています。
大嘘つきです。
いのちゃんの文体には非常に強い個性があり、
中級者さんの文体もそれに酷似しているため
いくら別人を装ってもバレバレです。
管理人さんは「なにがなんでも駄目とか、裁判のようにはしたくないと思っています。」
とおっしゃっていましたが
それでは利用停止自体が嘘だったことになります。

こんなところにはもういれらません。
2度と来ません。
私の技の裏のID削除をお願いします。
質問者 とし  [削除]  投稿日 4/15(日) 21:10:52
えーっと‥‥あの‥‥とりあえず中級者さんありがとうございました。
その通りBBS2000じゃなくてフォトメっ!でした。よくわかりましたねコレ(笑

で、動作確認も致しました。できました。どういった理由で、aとbを入れ替えたら昇順が降順になっちゃうのかはイマイチ分かってませんが(笑。

羊相談員さんは‥‥えっと‥‥。
とりあえずこの中級者さんのお答えは僕にとって非常にありがたいものだったし、言動が悪いとか以前の話とかよくわかんないんですが‥‥。

まぁ、なんつんだ。ごめんなさいよくわかりません(笑。

でも助かったよーアリガトー!!

このページは終了したので返信(回答)は書きこめません

Web裏技