人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPのmb_sendmail()で送信したメールと、アウトルックや、gmailやYahooメールで送信したメールでは何が違うのですか?
今まで全然気にせずmb_sendmail()を使ってきましたが、なぜmb_sendmail()で送信したメールはエラーが返ってこないんだろうと気になったので。

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


●質問者: goodbabies
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:Gmail PHP Yahoo アウトルック エラー
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● studiocherry
●40ポイント ベストアンサー

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);

◎質問者からの返答

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


2 ● うぃんど
●40ポイント

【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

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

◎質問者からの返答

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

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

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ