(現在 過去ログ4 を表示中)

HOME HELP 新着記事 トピック表示 検索 過去ログ

No7665 の記事


■7665 / )  Child Tree ログのJsへの書き出し方法
□投稿者/ ゆう -(2003/08/31(Sun) 10:41:45)
    りゅういちさん、こんにちわ。
    度々お世話になっております。
    いつも丁寧なご指導を頂けまして、私のように素人でも
    充分に理解する事が出来、また勉強にもなり大変ありがたく思っております。

    今回もまた、お知恵をお貸し頂きたく思いまして参りました。
    度重なる質問で申し訳ございません。

    今まで、I-BOARD 2001 のログから、
    題名や名前など必要部分を取り出して、JsでHTML上に書き出すCGIを使っておりました。
     ※以前こちらでサポートされていた方が作られた物を多少いじった物です
    I-BOARD 2001 のログは、単純に「<>」でのみ区切られているので、
    splitで<>として、必要データを取り出してJsに書き出していました。

    Child Tree のログなのですが…
    <>以外に、「:」や「|」などが利用されていて、
    今までのままのスクリプトが通用しなくなりました(当たり前ですが…)。

    本当に初歩的な事を伺っているのかもしれませんが…
    Child Tree ログの名前($name)や題名($d_may)を取り出すのは簡単なのですが
    $sel や $txt が取り出す事が出来ません。
     ※つまりは、:や|の中に入っているデータだと思います

    以前のスクリプトは以下のような感じです。
     ※短い物なので、直接貼り付けしてしまいましたが、
       ご迷惑となりましたら編集で削除して頂いても構いません。
       お手数お掛けします。
    Child Tree のログで再現する事は可能でしょうか…。
    まず今の所私の力量で、chopで並べる要素も曖昧です…。
     ※PerlはVer.は5なので、chompじゃなくても動作します

    大変お手数では有りますが、アドバイス的な事でも構いません。
    こちらでは当然テストしながら試行錯誤致しますので、
    何かしらご指南頂けると幸いです。

    お忙しいところすみません、宜しくお願い致します。

    ▼I-BOARD2001 での使用時のものです。
      最新ログから必要部分を3件書き出すようにしています

    @disp=();
    open(FILE,"<掲示板ログ.dat");
    for(1..3){
    $_=<FILE>;
    chop;
    ($n,$date,$name,$email,$title,$comment,$http,$color1,$color2,$icon,$no,$host,$ip)=split("<>",$_);
    push(@disp,"$date<>$name<>$n<>$title");
    }
    close(FILE);

    open(FILE,">date.js");
    print FILE "document.open();";
    foreach $i (@disp) {
    ($date,$name,$n,$title)=split("<>",$i);
    $d=substr($date,5,5);
    print FILE<<END;
    document.write('$d [$name]$title');
    END
    }
    print FILE "document.close();";
    close(FILE);

    # 透過PNGを定義
    @spriteblank=(137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,1,0,0,0,1,1,3,0,0,0,37,219,86,202,0,0,0,32,116,112,78,103,71,76,68,51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,180,77,30,174,0,0,0,6,80,76,84,69,0,0,0,255,255,255,165,217,159,221,0,0,0,1,98,75,71,68,0,136,5,29,72,0,0,0,1,116,82,78,83,0,64,230,216,102,0,0,0,10,73,68,65,84,120,218,99,96,0,0,0,2,0,1,229,39,222,252,0,0,0,0,73,69,78,68,174,66,96,130);

    # 透過PNG表示
    print "Content-type: image/png\n\n";
    foreach (@spriteblank) {
    $data = pack('C*',$_);
    print $data;
    }

    exit;
返信 [メール受信/OFF] 削除キー/


Pass/

HOME HELP 新着記事 トピック表示 検索 過去ログ

- Child Tree -