
スパムメールについて詳しい方アドバイス頂けないでしょうか?
現在サイトの申し込みフォームから大量のスパムメールが届くようになってしまったのですが、原因が分からずお助け願います。
まず、フォーム自体には大量に必須項目があり、また名前などの項目には、pattern="[^\x20-\x7E]*"の指定があり、半角英数のみなどは弾かれる設定です。
もちろん、それ以外にもjQuery:「validationEngine」の入力チェックでclass="validate[required]"必須の判定などを行っているのですが、これらの項目に半角英字のみがセットされていたり、必須の為空禁止なのに、空のままの状態で送信されてきます。
これらはどういった事が原因になっているのでしょうか?
javascriptなどの判定ではだめという事なのでしょうか?
フォームの流れとしては、index.htmlで申し込み、チェック通れば thanks.php に遷移してこちらでメールの送信などを行っております。
もちろん直接thanks.phpへはアクセスできないです。
こういった状況で、必須や空でメール送信が行われてしまうのは、どのような原因が考えられますでしょうか?
宜しくお願いいたします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
JavaScriptのチェックは何も意味を成さないです。
正規のユーザーに謝りを教えるだけで、スクリプトは直接postします。
基本的にはサーバー側(php)で同じバリデーションチェックを入れる必要があります。
国内向けサイトならサーバーで海外IPアドレスを弾くだけでほぼなくなるのではと思います。
有難うございます!!
>>JavaScriptのチェックは何も意味を成さないです。
>>正規のユーザーに謝りを教えるだけで、スクリプトは直接postします。
やはりそうですか、なんとなくそんな可能性もあるかもとは考えておりました。
>>基本的にはサーバー側(php)で同じバリデーションチェックを入れる必要があります。
なるほどです、そうしますとindex.htmlで簡易的なjsでのチェックを行い、新たに追加予定のcheck.phpでpostで受け取った値をPHPでチェックしようかと思いますが、この流れでよいでしょうか?
>>国内向けサイトならサーバーで海外IPアドレスを弾くだけでほぼなくなるのではと思います。
おっしゃる通り国外からのスパムとなっているので、IP判定も検討してみたいと思います。
貴重な情報を有難うございます!mm
No.2
- 回答日時:
>>それ以外は、PHPでのメール送信処理などが記載されています。
と言う事は、thanks.phpはphp言語を使って記述され、cgiでサーバ内で動作するプログラムなんですね。
index.htmlからthanks.phpがpostされるのですね。
で有れば、以下の2個を追加したら如何ですか。
先ずは1、それで駄目なら2も追加、と言う順序です。
1.確認画面を設置する
相手側が送信する前に確認画面を設置して送信までにワンステップ入れる。一段階いれることでことで自動送信ができなくなります。
2.reCAPTCHAを設置する
Googleが提供している「reCAPTCHA」を設置する。
メールフォームの最後に「私はロボットではありません」というメッセージにチェックボックスをつける?
見た事有ると思います。
これでワンステップ入れます。
有難うございます。
大変参考になります、もう1クッションcheck.phpをかませてみます。
合わせてreCAPTCHAについても導入をしたいと思います。
まずはこの内容で修正を進めてみたいと思います!
No.1
- 回答日時:
thanks.phpはサーバ内のみで動作するプログラムですか?
それともブラウザで表示可能なファイルですか?
遷移と言ってるので多分後者でしょう。
ネットサーフプログラムによってthanks.phpの中からメアドが盗られてると思います。
有難うございます。
>>thanks.phpはサーバ内のみで動作するプログラムですか?
>>それともブラウザで表示可能なファイルですか?
変な回答でしたら申し訳ありません。
thanks.phpは「申し込み有難うございました」のメッセージが完了画面として表示されます。
それ以外は、PHPでのメール送信処理などが記載されています。
メールアドレスがとられるというのは管理者用の確認メールアドレスでしょうか?
PHPで定数定義しているので取られることは無いように思うのですが。
それよりも、大量に色々なアドレスから申し込みが届いて困っています。
また、質問に記載した通り、必須項目や空チェックなど、複数のバリデーションかけているのですが、無視して送信されます。
こういった場合は、何が原因で送信されるのでしょうか?
もうフォームは関係なしに、直接POSTたたいているのでしょうか?
そうなった場合への対処法もお伺いできればと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- その他(メールソフト・メールサービス) Windows10付属のメール、なぜ設定が劇的に簡単になったのか? 1 2022/12/16 13:14
- その他(メールソフト・メールサービス) 大阪市プレミアム付き商品券のweb申し込みで楽天モバイルのEメールだと返信メールが届かない 2 2022/09/19 17:08
- 求人情報・採用情報 今日、ホテルのアルバイトに、タウンワークから応募しました。 すると、会社からGメールが届き、事前登録 1 2022/03/31 23:40
- その他(パソコン・スマホ・電化製品) ウィルスバスターモバイルについて。 iphone12 miniで、ウィルスバスターモバイルを使ってい 2 2022/07/10 12:59
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Gmail SPFレコードとDNSサーバーについて、gmailを設定できるかどうか 2 2023/06/10 23:55
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「戻る」ボタン使用時のフォー...
-
javascript中の記述でのJSP文<%%>
-
以下のコードを実行しても、オ...
-
Excel VBA カタカナ セル判定...
-
文字認証の問題
-
VB.NET2003 テキストボックスに...
-
csvファイルを読み込み、該当項...
-
VBAによる第3、4水準文字の判定...
-
ハイフンだけ置換したい。
-
テキストファイルの更新日時を取得
-
JSPの処理の途中で、JavaScript...
-
VB.netでタイマーがスタートし...
-
ブラウザからエクセルを開く方法
-
webサイトでjqueryを使うと普通...
-
ASP(VBS) ←→ JavaScript の変数...
-
Access2007 フォームでのOR検索
-
Visual Basic 6.0 のテキストボ...
-
ホームページビルダーでスクリ...
-
「終了していない文字列型の定...
-
教えてgooのカテゴリー選択のよ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
連動プルダウンについてです。
-
「戻る」ボタン使用時のフォー...
-
PHP処理実行後のページの遷移に...
-
助けてください!スパムメール...
-
Ajax以外で、JavaScriptからPHP...
-
ボタンに複数機能を持たせられ...
-
submitした後にiframeのページ...
-
javascript・JSP関連
-
javascript中の記述でのJSP文<%%>
-
画面遷移させずにCGIの戻り値を...
-
Onclickイベントでデータをcgi...
-
毎週決まった曜日から数日間だ...
-
JSPの処理の途中で、JavaScript...
-
以下のコードを実行しても、オ...
-
JavaScriptで ブラウザの閉じる...
-
if(1){...}とはどういうことで...
-
フォルダを自動で開く
-
PowerPointで時計表示
-
C#でボタン名を変更しても動く
-
VB.NET2003 テキストボックスに...
おすすめ情報