■[PR][]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
| この記事のURL
掲示板に、宣伝の書き込みがたまにある。すぐに消せるけれど、消すだけで更新日時が変わってしまうのが気に入らない。そこで、書き込み規制をすることにした。
まず、記事に特定の単語があったら書き込めないようにした。簡易BBSのソースで、内容がないときのエラー処理の後ろに、次のように追加した。以下は一例で、規制したい単語の数だけ条件を増やす。
if (($FORM{'value'} =~ 'NGワード1') || ($FORM{'value'} =~ 'NGワード2')) {
&error('NGワード','不適切な言葉が含まれています.');
}
ホストでの規制もした。リモートホストの取得処理の後ろに、以下のように書いた。これも、規制したいホストの数だけ条件を増やす。
if (($host =~ 'ホスト名1') || ($host =~ /ホスト名2/)) {
&error('ホスト規制','このホストからは投稿できません.');
}
'foo.bar.ne.jp'のような部分文字列での書き方だけでなく、/foo..\.bar\.ne\.jp/のように正規表現も使えるので、数字が変わっていても対応できる。
本当は、処理したい文字列を、別の場所に書き並べるか、外部にファイルを持ったほうが、今後のメンテナンスがしやすい。今のところは、似たようなホストからの、似たような書き込みが多いので、今回は簡単に済ませた。