PHPのmb_sendmail()で送信したメールと、アウトルックや、gmailやYahooメールで送信したメールでは何が違うのですか?

今まで全然気にせずmb_sendmail()を使ってきましたが、なぜmb_sendmail()で送信したメールはエラーが返ってこないんだろうと気になったので。

もし、エラーが分かる方法があれば合わせて教えて頂きたいです。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/11/16 09:28:00
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:studiocherry No.1

回答回数283ベストアンサー獲得回数100

ポイント40pt

php の mb_send_mail の書式は、次の通りですが、プログラム中で、どのように 使っていますか?

(参考: mb_send_mail() マニュアルページ http://php.net/manual/ja/function.mb-send-mail.php )


mb_send_mail ( string $to , string $subject , string $message [, string $additional_headers = NULL [, string $additional_parameter = NULL ]] )



mb_send_mail で、送信するメールに対して、エラーメールを 正しく受け取るためには、 additional_parameter に ''-fエラーメール受信するアドレス' を設定する必要があります。

なお、送信先メールサーバが、エラーメールを返さない設定になっている場合は、このようにしても エラーメールは、返ってきません。 (送信先が、携帯メール等で、返ってこない場合があります。)


たとえば、以下のように additional_parameter を設定すると「送信元メールアドレス」に エラーメールが返ってきます。

$to = "送信先メールアドレス";

$subject = "件名";

$message = "本文";

$header = "From: 送信元メールアドレス";

$param = "-f送信元メールアドレス";

mb_send_mail($to, $subject, $message, $header, $param);

id:goodbabies

mb_sendmailの第五引数はそういうことだったのですね、理解しました。ありがとうございます

2010/11/16 09:27:02

その他の回答1件)

id:studiocherry No.1

回答回数283ベストアンサー獲得回数100ここでベストアンサー

ポイント40pt

php の mb_send_mail の書式は、次の通りですが、プログラム中で、どのように 使っていますか?

(参考: mb_send_mail() マニュアルページ http://php.net/manual/ja/function.mb-send-mail.php )


mb_send_mail ( string $to , string $subject , string $message [, string $additional_headers = NULL [, string $additional_parameter = NULL ]] )



mb_send_mail で、送信するメールに対して、エラーメールを 正しく受け取るためには、 additional_parameter に ''-fエラーメール受信するアドレス' を設定する必要があります。

なお、送信先メールサーバが、エラーメールを返さない設定になっている場合は、このようにしても エラーメールは、返ってきません。 (送信先が、携帯メール等で、返ってこない場合があります。)


たとえば、以下のように additional_parameter を設定すると「送信元メールアドレス」に エラーメールが返ってきます。

$to = "送信先メールアドレス";

$subject = "件名";

$message = "本文";

$header = "From: 送信元メールアドレス";

$param = "-f送信元メールアドレス";

mb_send_mail($to, $subject, $message, $header, $param);

id:goodbabies

mb_sendmailの第五引数はそういうことだったのですね、理解しました。ありがとうございます

2010/11/16 09:27:02
id:windofjuly No.2

回答回数2625ベストアンサー獲得回数1149

ポイント40pt

【1】大きな違いはエラーメッセージの返信先が違うということです

手順 mail関数、mb_sebd_mail関数 アウトルックや、gmailやYahooメールなど
1.メールサーバへの接続や送信に失敗した場合 falseが返ってくる 接続できませんなどのエラー表示が出たりする
2・メールサーバへの送信が正常に終了した場合 trueが返ってくる 送信が完了しましたなどの表示が出たり、何事もなく終わったりする
3.メールサーバがメールを配ろうとしたときにエラーとなり、エラーメッセージを送り出した場合 phpの稼動しているサーバ管理者宛にメールが送られる メール送信者にメールが送られる

 

【2】返信先を変える方法

mb_send_mailの第五引数additional_parameterに"-f返信先メールアドレス"といった具合に返信先を指定できる場合があります

http://jp.php.net/manual/ja/function.mb-send-mail.php

(指定できるかどうかはサーバ次第になります)

id:goodbabies

いつも分かりやすいありがとうございます。

何も設定していないと、サーバー管理者に送られるのですね。理解しました。

2010/11/16 09:27:37

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません