- ベストアンサー
掲示板に電話番号やメールアドレスの書き込みを出来なくするには?
レスキュー裏技のミニチャット3 MiniCHAT3 を使ってチャットを運営しています。基本的に電話番号や、メールアドレスの書き込みを禁止しているのですが、無視して書き込んでくるユーザーがたくさんいて困っています。そこで強制的に電話番号とメールアドレスを書き込めないようにしようと思っているのですが、どうすればいいのでしょうか?「@」の入った文字列を入力しようとするとはじかれるようにしたいのですが、どうかご教授の方よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
96行めの &jcode'convert(*value,'sjis'); # SJIS変換 の後に、 $value =~ s/[0-9]{10,11}/XXXX/g; $value =~ s/0[0-9]+-[0-9]+-[0-9]{4,6}/XXXX/g; $value =~ s/[0-9A-Za-z_-]+@[0-9A-Za-z.-]+[.][A-Za-z]{2,3}/XXXX/g; てな感じのを追加すれば大概の電話番号とメルアドは伏字にできるんで、試してみてくらはい。
その他の回答 (3)
- KOH_da
- ベストアンサー率31% (161/506)
akiraxさんはPerlのプログラミングはできるのですか? もしできないなら、Perlの勉強をしなければなりません。 電話番号やメールアドレスの書き込みを禁止するプログラムは、 ひじょうに簡単なもので、Perlさえわかれば誰でも作れると思います。 しかしご自分でPerlでのプログラミングができないのでしたら、 元のCGIを渡して他人に作ってもらうことになるでしょうね。 OK-Webではファイルの受け渡しができませんから、 ここで説明をするのは難しいと思います。 電話番号の場合、一定の長さの文字列中に、 高い率で半角の数字、全角の数字が混じっていたら×とすればいいです。 メールアドレスはそれをアルファベットに置きかえるわけですが、 英単語までひっかかると困るので、もっとチェックを厳密にします。 文字列に@が混じっているとか、最後に.comや.jpなどがつくとか。 ファイルを受け渡ししながら質問ができるサイト、 たとえばK-squareなんかで質問すれば、 もっと突っ込んだ回答が得られると思いますよ。
- 参考URL:
- http://www.ksquare.co.jp/
- otsuge
- ベストアンサー率15% (43/278)
その程度のスクリーニングでは abc12345アットokweb.com とか、いくらでも、かいくぐられてしまうと思います。
レスキュー裏技ということは、そのCGIは Perlで書かれているのですよね。 だとすると、@を含む文字列の検索は、 パターンマッチを行えば発見することが できますよ。 #そこら辺はご自分で調べてください。 また、電話番号については、数字が10桁、 もしくは11桁続いている場合、もしくは ハイフンを含んで12桁、もしくは13桁の ものを探してはどうでしょう。正規表現を 使えば、パターンマッチで見つけられる はず。 #これも勉強だと思って調べてください。 ではでは☆
お礼
本当に簡潔で、分かりやすいご回答誠にありがとうございます。気持ちいいくらいに一発で問題解決しました。本当にありがとうございました。