SAK 図書館
PHP 基礎編11 - 電子メール送信 mail、i18n_convert、mb_send_mail
■電子メール送信 mail (PHP3)
・PHP3 では、電子メール送信も簡単である。
但し、いくらか設定が必要なようで、実動作テストできなかった。
・「$mlfr = 'mailadr@????.???';」は、発信元メールアドレスを指定する。
アンケートなどでは、相手の入力メールアドレスをセットすれば良い。
単なるお知らせであれば、自分のメールアドレスを指定する。
・「$mlto = 'mailadr@????.???';」は、送信先メールアドレスを指定する。
これは自分のメールアドレスを必ず指定する。
・「$mlsb = 'title';」は、メールタイトルを指定する。
・「$mlms = 'てすとメッセージです。';」は、メール本文を指定する。
複数行に改行する場合は、「"\n"」を使用する。
$mlms = 'てすとメッセージです。' . "\n";
$mlms = $mlms . '2 行目' . "\n";
$mlms = $mlms . '3 行目' . "\n";
<?php
/*
========================================================================
PHP3 メール送信テスト test5.php
========================================================================
*/
// 準備
$mlfr = 'mailadr@????.???';
$mlto = 'mailadr@????.???';
$mlsb = 'title';
$mlms = 'てすとメッセージです。';
$jcph = '.';
// メール送信
$mlsb = i18n_convert($mlsb, "JIS", "SJIS");
$mlms = i18n_convert($msg, "JIS", "SJIS");
$rcd = @mail($mlto, $mlsb, $mlms, $mlfr);
?>
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE>メール送信テスト</TITLE>
</HEAD>
<BODY>
<P align="center">▼ メール送信テスト ▼</P>
<HR>
<DIV>
<?php
if ($rcd) {
print "<P>メール送信完了</P>";
}
else {
print "<P>メール送信エラー</P>";
}
?>
</DIV>
<HR>
</BODY>
</HTML>
■電子メール送信 mb_send_mail (PHP4)
・PHP4 では、電子メール送信も簡単である。
但し、いくらか設定が必要なようで、実動作テストできなかった。
・「$mlfr = 'mailadr@????.???';」は、発信元メールアドレスを指定する。
アンケートなどでは、相手の入力メールアドレスをセットすれば良い。
単なるお知らせであれば、自分のメールアドレスを指定する。
・「$mlto = 'mailadr@????.???';」は、送信先メールアドレスを指定する。
これは自分のメールアドレスを必ず指定する。
・「$mlsb = 'title';」は、メールタイトルを指定する。
・「$mlms = 'てすとメッセージです。';」は、メール本文を指定する。
複数行に改行する場合は、「"\n"」を使用する。
$mlms = 'てすとメッセージです。' . "\n";
$mlms = $mlms . '2 行目' . "\n";
$mlms = $mlms . '3 行目' . "\n";
<?php
/*
========================================================================
PHP4 メール送信テスト test6.php
========================================================================
*/
// 準備
$mlfr = 'mailadr@????.???';
$mlto = 'mailadr@????.???';
$mlsb = 'title';
$mlms = 'てすとメッセージです。';
$jcph = '.';
// メール送信
$rcd = mb_send_mail($mlto, $mlsb, $mlms, $mlfr);
?>
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE>メール送信テスト</TITLE>
</HEAD>
<BODY>
<P align="center">▼ メール送信テスト ▼</P>
<HR>
<DIV>
<?php
if ($rcd) {
print "<P>メール送信完了</P>";
}
else {
print "<P>メール送信エラー</P>";
}
?>
</DIV>
<HR>
</BODY>
</HTML>
【補足】
・$mlfr の内容ですが、正しくは、次のように指定するらしいです。
$mlfr = 'from: mailadr@????.???';
・また次のように複数のヘッダ情報も指定できるとのこと。
$mlfr = 'From: mailadr@????.???' . "\r\n" .
'Reply-To: mailadr@????.???' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
・尚、mail() のラッパ関数と言う事で、第 4 引数の省略も可能とのこと。
情報を下さった方、ありがとうございました。
■PHP 基礎編資料
■PHP + MySQL 編資料
■CGI-Perl 基礎編資料
■CGI-Perl 基礎実地編資料
■CGI-Perl 応用実地編資料