プロが教えるわが家の防犯対策術!

リンクのみが投稿されるスパムが横行しているようです。外国からと思いIPアドレス調査してみると、どうも外国とは限らないようなので、日本以外のIPアドレスを制限しても無駄でした。とりあえず、日本語が書かれていない(日本語コードが検知できない)場合に投稿できないようにする簡単な方法をご案内します。 jcode.plを利用し、文字コードを判定するものです。半角文字だけであれば全角コードは検知されません。プログラムによりチェックしたい変数名は異なりますので、掲示板であれば内容文などが入っている変数に読み替えてください。ここでは $LINE にチェックしたいデータが入っているものとします。また、エラー処理は &error(); だと仮定しますので、そのプログラムで使われている方法に書き換えてください。プログラムやデータをEUCで扱っている場合は euc が含まれるかどうかに変更してください。ここでは sjis が検知できない場合にエラー処理します。

if (&chkZenkaku($LINE) ne 'sjis') { &error("エラー","内容文に日本語コードが検知できませんでした。"); }
sub chkZenkaku
{
local($line) = @_;
(@line) = &jcode'getcode(*line);
$line[1];
}

という回答があったのですがjcode.plに上記をコピーして上書きしたらエラーになりページが表示されませんでした。
アドバイスお願いします。

A 回答 (2件)

フォルダではなく、BBS.cgiというプログラムの中に書く必要があるのだと思います。



お使いのCGI(http://www.rescue.ne.jp/ の中のどれであるか)を教えていただければ、アドバイスできるかと思います。

この回答への補足

古いプログラミングでしたのでバージョンアップする事にしたのですが

http://www.rescue.ne.jp/cgi/minibbs-ex/

# ↓管理用暗証番号の設定を
# 添付のcrypt.cgiを設置して実行し、設定する暗証番号を入力して暗号を作成します。
# それをそのまま下記にコピーしてください。

上記をcrypt.cgiにアクセスし暗号を作成しコピーしてUPしたのですが
うまく表示されません。

わかれば教えてください。

補足日時:2007/12/08 13:03
    • good
    • 0

jcode.plではなく、あなたのプログラムに記述するのだと思います。

この回答への補足

http://www.rescue.ne.jp/

こちらのサイトよりCGI方は使わせて頂いているのですが
BBS.cgiのフォルダの事ですか?

補足日時:2007/12/07 17:23
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!