ついでにスレッド天国の方も紹介しておきます。
1) ngwords.cgiという名前のテキストファイルを作成し、
禁止語句をtengoku.cgiと同じ文字コードで一行ずつ書いて下さい。
特に指定しない場合は空のファイルでも構いません。
2) ngwords.cgiをtengoku.cgiと
同じディレクトリにアップロードして下さい。
拡張子はcgiですが属性は644でOKです。
3) tengoku.cgiの環境設定の最後(65行目くらい)に
次の一行を追加して下さい。
$ngwords='ngwords.cgi';
4) tengoku.cgiの「投稿内容チェック」(2962行〜2997行の辺り)を
以下のように修正して下さい。
# --- 修正前 ここから ---#
# 投稿内容チェック
if ($in{pdx} eq 'in') {
$in{mes} = $in{pdxdata};
}
if (($in{nam}) && (length($in{nam}) > 40)) {
$in{nam} = '';
push (@msg,"名前が長すぎます。");
$dataerror++;
}
if ($in{mal} !~ /[\w\.\_\-]+\@[\w\.\_\-]+/) { $in{mal} = ''; }
if ($in{url} =~ /http:\/\/[\w\.\_\~\-\/\?\&\+\=\:\%\;\,]+/) {
$in{url} =~ s/^http:\/\///;
} else {
$in{url} = '';
}
if (!$in{tnm}) {
if ((!$in{tit}) && (length($in{tit}) >= 160)) {
$in{tit} = '';
push(@msg,"タイトルが長すぎます。");
$dataerror++;
}
}
$in{col} ||= $in{"colm_$mobile"};
$in{ico} ||= $in{"icon_$mobile"};
if ($in{mes}) {
$in{mes} =~ s/\x0D\x0A/\n/g;
$in{mes} =~ tr/\r/\n/;
$in{mes} =~ s/^\n+//g;
$in{mes} =~ s/(\n|。。| | )+$//g;
$in{mes} =~ s/\n\n[\n]+/\n\n\n/g;
$in{mes} =~ s/\n/&br;/g;
if (length($in{mes}) >= 4800) {
push (@msg,"内容が長すぎます。");
$dataerror++;
}
}
# --- 修正前 ここまで ---#
↓↓↓この部分を次のように修正して下さい。↓↓↓
# --- 修正後 ここから ---#
# 投稿内容チェック
if ($in{pdx} eq 'in') {
$in{mes} = $in{pdxdata};
}
if (($in{nam}) && (length($in{nam}) > 40)) {
$in{nam} = '';
push (@msg,"名前が長すぎます。");
$dataerror++;
}
if ($in{mal} !~ /[\w\.\_\-]+\@[\w\.\_\-]+/) { $in{mal} = ''; }
if ($in{url} =~ /http:\/\/[\w\.\_\~\-\/\?\&\+\=\:\%\;\,]+/) {
$in{url} =~ s/^http:\/\///;
} else {
$in{url} = '';
}
$urlnum = ($in{tit} =~ s/http/http/ig);
if ($urlnum >= 1) {
$in{tit} = '';
push(@msg,"URLはタイトル欄には記載できません。");
$dataerror++;
}
if (!$in{tnm}) {
if ((!$in{tit}) && (length($in{tit}) >= 160)) {
$in{tit} = '';
push(@msg,"タイトルが長すぎます。");
$dataerror++;
}
}
$in{col} ||= $in{"colm_$mobile"};
$in{ico} ||= $in{"icon_$mobile"};
if ($in{mes}) {
$in{mes} =~ s/\x0D\x0A/\n/g;
$in{mes} =~ tr/\r/\n/;
$in{mes} =~ s/^\n+//g;
$in{mes} =~ s/(\n|。。| | )+$//g;
$in{mes} =~ s/\n\n[\n]+/\n\n\n/g;
$in{mes} =~ s/\n/&br;/g;
if ($in{mes} !~ m/[\x80-\xff]/) {
push (@msg,"当掲示板は日本語専用掲示板です。日本語以外は制限されています。");
$dataerror++;
}
$urlnum = ($in{mes} =~ s/http/http/ig);
if ($urlnum >= 6) {
push (@msg,"URLを多数記載する事は制限されています。");
$dataerror++;
}
if (length($in{mes}) >= 4800) {
push (@msg,"内容が長すぎます。");
$dataerror++;
}
open(IN, $ngwords);
while ($ngword = <IN>) {
$ngword =~ s/\s+$//;
if(index($in{mes},$ngword)>=0){
push (@msg,"不適切な語句が含まれています。");
$dataerror++;
last;
}
}
close(IN);
}
# --- 修正後 ここまで ---#
5) 以上、改造したtengoku.cgiをアップロードして動作を確認して下さい。