• 締切済み

PHPメールフォームの英語スパム対策 書き方

サイトにPHPのメールフォームを設置しているのですが、半角英語文字の羅列と複数URLによるスパム書き込みに悩んでおります。 キャプチャ認証を使いたくなかった為、 http://note.phyllo.net/?eid=634535 上記の方が書いている2バイト文字チェックでスパム対策出来ないかと思ったのですが、そのまま記入しても動きません。 導入したいと思っていますのは、ewebサイトさんの下記のPHPメールフォームです。 http://php.eweb-design.com/1301_mail.html 何分知識不足の素人でして、具体的にどこの部分にどういう形で記入と指定して頂けると分かると思います。 丸2日対策自体を探しまわり答えが出ず疲弊しています。 お手数ですがご回答お願いします。

みんなの回答

  • warez
  • ベストアンサー率57% (29/50)
回答No.1

「動かない」というだけではエスパー的回答しかできませんが。 ・mbstring 関数が有効になっていない →有効にする ・文字エンコーディングの設定 →mb_ereg_match() を使う前に mb_regex_encoding('使用する文字エンコード')

ku1395
質問者

補足

お返事ありがとうございます。 中々返事がつかなかったので困ってました^^; 少し具体的に書きますと。 http://note.phyllo.net/?eid=634535 ←このサイトの //$textにひらがな(あ~ん)が含まれる時だけ処理を行う if(mb_ereg_match("[あ-ん]",$text)){ //処理 } 上記処理ですが、http://php.eweb-design.com/1301_mail.html​←このサイトで無料配布しているPHPの中で処理させれば、スパム対策が出来るのではと、思うのですが、どのように・どこに記入すれば良いのかが分からないのです。 if(mb_ereg_match("[あ-ん]",$text)){ 例えば、上記の中の「$text」とありますが、これは個別に変えなければいけないのですよね? FORMから送られて来た文言をチェックする対象を指定しているのだとは思いますが・・意味は伝わるでしょうか・・?

すると、全ての回答が全文表示されます。

関連するQ&A