[PHP-users 30575] Re: メールの送信時の差出人

KKuji_Y2a kkuji @ mwb.biglobe.ne.jp
2006年 10月 21日 (土) 09:29:59 JST


KK@IB です

多分、mb_send_mail の仕様に関し勘違いをされているのだと思います。
http://jp.php.net/mb_send_mail

第4パラメータにメールアドレスを書くと、Fromになるということは
なく、headerとしての形をとれば、そのように処理されるのだと思います。

上記ページのUser Contributed Notesの中にこういうのがありますが、参考になるのでは?

phpguru at hotmail dot com
27-Feb-2003 04:29
There is another way of encoding Japanese language to send email without 
worrying about mb_functions:

Download PHP Jcode from http://www.spencernetwork.org/
and use JcodeConvert function with base64_encode function for the e-mail 
header and the subject.

$email_to = "blah @ blah.com";

$_POST["name"] = strip_tags(trim($_POST["name"]));
$name = "=?ISO-2022-JP?B?". base64_encode(JcodeConvert($_POST["name"], 2, 
3)). "?=";
$_POST["email"] = strip_tags(trim($_POST["email"]));
$_POST["subject"] = strip_tags(trim($_POST["subject"]));
$email_subject = "=?ISO-2022-JP?B?". 
base64_encode(JcodeConvert($_POST["subject"], 2, 3)). "?=";
$_POST["body"] = strip_tags(trim($_POST["body"]));

$email_header = "From: $name <". $_POST["email"] .">\n";
$email_header .= "Reply-To: ". $_POST["email"] ."\n";
$email_header .= "Content-transfer-encoding: 7bit\n";
$email_header .= "Content-type: text/plain; charset=\"iso-2022-jp\"\n\n";

$email_body = "blah blah blah.\n"

mail($email_to, $email_subject, $email_body, $email_header);

> 差出人を設定できません、$m_fromをセットしているにもかかわらず、
> とあるプロバイダのメールアドレスにから発信されたメールが届きくのですが、
>
> // メール内容をセットする。
> mb_internal_encoding("SJIS");
> $m_to   = $row['mail'];
> $m_sub = "foo";
> $m_body = $row['name']."さんこんにちは。\n".$message;
> $m_from = "hogehoge @ bar.sar.com";
>
> // メールを送信する。
> mb_send_mail($m_to, $m_sub, $m_body, $m_from);



PHP-users メーリングリストの案内