質問掲示板

CGIなどのの質問を受付ます。
現在SPAM対策の為、一部ホストアドレスを規制中。

新規発言一覧最新記事過去一覧 | 検索HOME

スレッド

└◇504:
対処法です [moon(管理人っぽい)] 02/07 05:40

 └◇506:次々申し訳ないですが… [ぽぉ] 02/08
  └◇507:4.44にUP [作者] 02/08
   └◇508:さし替えました [ぽぉ] 02/09


504● 対処法です[ moon(管理人っぽい) ] 2007 02/07 05:40
よくよく考えたら、年号を二桁しか取ってないので2000年問題に引っかかりまくりなんですよね・・・
まぁ、そこはやりようもありますので対処法です。

2338行目あたりの
sub dir らへん

    local($dr);
    @dir = ();
    #ディレクトリ内を読み込む。
    opendir(DIR,"$direct") || mkdir($direct,0777);
    while ($dr = readdir(DIR)){
        # ファイル名が数字四つの形式だったらファイルリストに格納
        if($dr =~ /^\d\d\d\d$/){ push(@dir,$dr); }
    }
    closedir(DIR);
    # 並べ替える
    @dir = sort{$b <=> $a} (@dir);

    # ファイル(リスト)が無い場合何も表示しない


これを↓に差し替えてください。



    local($dr);
    @dir = ();
    @dir1 = ();
    #ディレクトリ内を読み込む。
    opendir(DIR,"$direct") || mkdir($direct,0777);
    while ($dr = readdir(DIR)){
        # ファイル名が数字四つの形式だったらファイルリストに格納
        if($dr =~ /^(\d\d)\d\d$/){
            if ($1 > 50) {
                push(@dir1,$dr);
            } else {
                push(@dir,$dr);
            }
        }
    }
    closedir(DIR);
    # 並べ替える
    @dir = sort{$b <=> $a} (@dir);
    @dir1 = sort{$b <=> $a} (@dir1);
    push(@dir,@dir1);

    # ファイル(リスト)が無い場合何も表示しない

要するに、
if ($1 > 50) {
のところで、年号が50年以上だった場合は別で保存して後で連結させています。
100年使えない日記ですが、100年もこの日記を使い続けるという想定はありません。


> 前回教えて頂いた通りに手を入れて過去分をUPしたのですが、1900年代の記事をUPした時、ログの選択プルダウンでは1900年代の方が上に並んでしまいます。
スレッド一覧


506● 次々申し訳ないですが…[ ぽぉ ] 2007 02/08 05:42
どうもありがとうございました。
私も今から100年生きるのはちょっとしんどいので、100年このCGIを使い続ける予定はありません(笑)

ところで、1月に4.43をアップロードして、2月に書き込みしてもカレンダーの月が替わらないです…。
HTMLで吐き出している方はちゃんと二月になってるのに。
サンプルでもカレンダー変わらないですよね?
スレッド一覧


507● 4.44にUP[ 作者 ] 2007 02/08 18:54

> ところで、1月に4.43をアップロードして、2月に書き込みしてもカレンダーの月が替わらないです…。
> HTMLで吐き出している方はちゃんと二月になってるのに。
> サンプルでもカレンダー変わらないですよね?

確認しました。
これは右側にカレンダー表示しているときに起こるようです。
最新記事の一番最後の記事の書き込みの月のカレンダーを表示しているようでした。
修正しました。
スレッド一覧


508● さし替えました[ ぽぉ ] 2007 02/09 21:01
仰る通り右側表示にしてました。
素早い対処ありがとうございました。

しつこいようですが最初に出した要望を気長に待たせていただきたいので、済みはつけずにおきますね。
(要望の中のレス修正機能については、多少無理やりではありますがやり様を発見し自己解決しましたので取り下げます)
スレッド一覧

CGIROOM