[PHP-users 14097] mb_send_mail()の質問です
php-users @ php.gr.jp
php-users@php.gr.jp
2003年 3月 19日 (水) 13:22:44 JST
お世話になります、甲斐といいます宜しくお願いいたします。
httpd-2.0.40-11
postgresql-7.2.2-1
php-4.2.2-8.0.5
という環境でWEBサーバープログラムを書いています
会員登録を行なうさい無効なメールアドレスをDBから削除して今後同じメールアドレス
への送信を行なわないように無効なアドレスを弾くために送信したメールが正しく相手
に届いたか否かを、判別したいとおもい、過去ログやマニュアル
http://apollo.u-gakugei.ac.jp/man/php/function.mail.html
http://apollo.u-gakugei.ac.jp/man/php/function.mb-send-mail.htmlをみたところ
5番目のパラメータのadditional_parameter は、MTA のコマンドラ インパラメータです。
sendmailを使用する場合に正しいReturn-Pathを設 定する場合に便利です。
成功時にTRUE、その他の場合 FALSEを返します。
とあります、sendmail.cfのReturn-Pathをみましたが理解できず
とりあえず、自分のメールアドレスを指定したら送信に失敗したメールが戻りますが
(送信に失敗したメールは普通送信元へ戻ってきますがここでは、瞬間的に戻ると云う事です)
プログラム最後の方の$msendにTRUE又はFALSEが代入され判別できるかと思ったのですが、代入されず無効なアドレスに送信してもTRUEになってしまいます、
print ("$msend") ;とすると1が出力されています、
Return-Pathに指定された場所をプログラムが参照していないのか、$msendへのパラメータの引き渡しがおかしいと思うのですがよくわかりません、宜しくご教授お願いします。
<?php
//
//メール送信、チェック
//
//送信先、実在しないメールアドレス
$to = "hogehoge@hoge.ne.jp" ;
//題名
$subject = "mb_send_mail関数のテストです" ;
//本文
$body = "正しくmb_send_mail関数のテストがおこなわれたかな?" ;
//メールの送信元(返信先)アドレス
$from = "clam@infosakyu.ne.jp" ;
//メールの戻り場所
$return_path = "-fclam@infosakyu.ne.jp" ;
$msend = mb_send_mail($to, $subject, $body, "From: $from\nReply-To: $from\nX-Mailer: PHP/" . phpversion(), $return_path ) ;
if ($msend = "TRUE" ) {
print ("メールの送信に成功しました。" . "<br> ") ;
} else {
print ("メールの送信に失敗しました。" . "<br> ") ;
}
?>
PHP-users メーリングリストの案内