#!/usr/local/bin/perl
# 設定変数の定義 #
# ログの保存行数
$maxlog = 30;
# 1ページ当たりの表示発言数
$pageline = 10;
# 発言文字色
@msgcol = ('#000000','#ff0000','#008000','#000080','#0080ff');
# スクリプト名
$mycgi = 'bbs1.cgi';
# ログファイル名
$logfile = 'bbs1.log';
# 入力内容のデコード #
if($ENV{'REQUEST_METHOD'} eq "POST"){
read(STDIN,$in,$ENV{'CONTENT_LENGTH'});
}else{ $in = $ENV{'QUERY_STRING'}; }
@in = split/&/,$in;
foreach(@in){
($key,$val) = split/=/;
$val =~ tr/+/ /;
$val =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C",hex($1))/eg;
$val =~ s/</g;
$val =~ s/>/>/g;
$val =~ s/\r//g;
if($key eq 'body'){
$val =~ s/\n+$//g;
$val =~ s/\n/
/g;
}else{
$val =~ s/\n//g;
}
$in{$key} = $val;
}
# 処理モード判定 #
if($in{'submit'}){ &insert(); }
else{ &view(); }
exit;
# 発言処理 #
sub insert{
$in{'name'} eq '' and &error('お名前が入力されていません。');
$in{'title'} eq '' and &error('タイトルが入力されていません。');
$in{'body'} eq '' and &error('本文が入力されていません。');
$in{'color'} eq '' and &error('文字色が選択されていません。');
# 発言日時の取得
($ss,$mm,$hh,$d,$m,$y,$w) = localtime();
$y += 1900;
$m++;
@wday = ('日','月','火','水','木','金','土');
$date = sprintf("%d/%02d/%02d(%s)%02d:%02d:%02d",$y,$m,$d,$wday[$w],$hh,$mm,$ss);
# 追加するログデータの作成
$newlog = "