こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

存在しないメールアドレスかどうかのチェック

PHPのNet_SMTPにて、メール送信するプログラムを作成しています。

http://pear.php.net/manual/ja/package.networking.net-smtp.php
を参照して作成しているのですが、

存在しないメールアドレスかどうかのチェックは可能でしょうか?

ユーザーが誤ったメールアドレスを設定していた場合、
システムはそのメールアドレスにメール送信するのですが、
当然誤ったメールアドレスなので、ユーザーには届きません。

このような事を回避するために、
システムがメールを送信する際に、
この世に存在するアドレスかどうかチェックする術はあるのでしょうか?

返却されたメールを解析するしか無いのでしょうか…


※.アドレス内に「@」が無いなどのチェックではなく、
  存在するアドレスかどうかのチェックが可能かどうかになります。

投稿日時 - 2010-02-08 12:08:34

QNo.5658820

すぐに回答ほしいです

質問者が選んだベストアンサー

>返却されたメールを解析するしか無いのでしょうか…

まず、ドメインの存在自体は、getmxrr()などでチェック可能です。
ただ、「この関数をメールアドレスの確認の目的で使用すべきでは
ありません」と注記されているとおりドメインの有効性はこちらを
利用すべきではないかもしれません。

ドメインはあっているが、メールアドレスが間違っている場合については
最近はスパム対策のため「返却さえしない」ケースの方が多いと思います。
なので何をチェックしても無駄です。
基本的には放置。必要ならユーザー側から問い合わせがくるでしょう。

どうしてもという場合は、やはり空メールを送らせて、最初から有効だと
いう前提の登録システムを構築すべきです

投稿日時 - 2010-02-08 12:27:34

ANo.2

このQ&Aは役に立ちましたか?

6人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

メールアドレスの誤った記述以外は、実際にメールサーバーに問い合わせるしかないですよ

その方法の中で一番簡単で確実なのが確認メールを相手に送ることです
(メールアドレス登録時の問題もありそうな気がしますが、触れないことにしておきます)

投稿日時 - 2010-02-08 12:16:41

あなたにオススメの質問