#!/usr/bin/perl ########################################################## # JBBS ログコンバートスクリプト Ver 2.00 (JBBS to 12chBBS) # みちのく掲示板 http://mitinoku.jp/ # タカヒロ@みちのく掲示板 12ch@miyagino.com # # Ver.2.0 2010/02/20 # #【概要】 # JBBSのログを12chBBS形式にオンライン上で変換するスクリプトです。 # JBBS・JBBS@したらば両方に対応しています。 # #【使用法】 # 1) ./admin/にいれます。 # 2) URLをいれます。 # 3) 移転先板IDを選びます。 # 4) 取得します。 # 5) リメイクして完了 # 6) 複数あるときは(2)に戻る # 7) 【これ重要】終わったらこのスクリプトをサーバー上から抹消します。 # # ※) レス数がズレるバグがありますので、管理画面でもう一度リメイクしてください # #【注意事項】 # このスクリプトは、既に運営している12chBBS掲示板に使用した場合、99%くらいの確立で既存のデータを上書きします。(泣) # 必ず新しく作成した板でご利用ください。 # 終わったらこのスクリプトはサーバー上から速やかに削除しましょう。 # そうしないと、やられます。 # このスクリプトは相手先にそれなりの負荷をかけてしまいます。 # JBBS側に予め問い合わせるのが吉かと思います。 # JBBSの生ログを取得するわけではありませんのでバックアップには使用出来ないと思います。 # #【使用条件】 # 動作確認等はしていますが、知りえないバグ・ミス等あるかもしれません。 # お気軽に掲示板か、メールでお知らせ頂ければ嬉しいです。 # このスクリプトを使用して起きた如何なる損害に対してもタカヒロは一切責任は持ちませんので、自己責任でお願いします。 # 著作権は放棄出来そうにないですが、商用利用・再配布・改造・その他何でもOKです。 # その際、一言連絡を頂ければ嬉しいです。 # # # DATの取得方法は次の通りです。 #http://jbbs.livedoor.jp/bbs/rawmode.cgi/[カテゴリ]/[掲示板番号]/[スレッド番号]/ #・DATファイルの内容は次の通りです。 #[レス番号]<>[名前]<>[メール]<>[日付]<>[本文]<>[スレッドタイトル]<>[ID] # # # 以上 #=============================================================== use strict; use Time::Local; use FindBin qw($Script); $| = 1; my $basepath = '..'; require $basepath.'/jcode.pl'; undef my ($buffer); undef my (%form); if ("\U$ENV{'REQUEST_METHOD'}\E" ne "POST") { $buffer = $ENV{'QUERY_STRING'}; } else { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } foreach (split /&/, $buffer) { my ($name, $value) = split /=/; $value =~ tr/+/ /; $value =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("C", hex($1))/eg; $form{$name} = $value; } my $url = $form{url} eq '' ? 'http://' : $form{url}; print <<"HTML"; Content-type: text/html