phpでメール送信part2

2019年10月10日 CEO 0 Comments

つづきになりますが、添付ファイルをつけるなら、

こちらのサイトがとても丁寧に解説してくれていました。

実装例はこんな感じ -

<html>
<head>
<meta charset=”utf-8″ />
</head>
<body>
<?php
mb_language(“Japanese”);
mb_internal_encoding(“UTF-8”);

$to = “to_mail_address“;
$from = “from_mail_address“;
$title = “テストメール”;

//ヘッダー設定
$header = “Content-Type: mugtipart/mixed;boundary=\”BOUNDARY\”\n”;
$header .= “Return-Path: ” . $to . ” \n”;
$header .= “From: ” . $from .” \n”;
$header .= “Sender: ” . $from .” \n”;
$header .= “Reply-To: ” . $to . ” \n”;

//本文
$text = “テストメール”;
$content = “–BOUNDARY\n”;
$content .= “Content-Type: text/plain; charset=\”UTF-8\”\n\n”;
$content .= $text . “\n”;
$content .= “–BOUNDARY\n”;

//添付ファイル名
$file = “test.pdf”;

//添付ファイル設定
$content .= “Content-Type: application/octet-stream; name=\”{$file}\”\n”;
$content .= “Content-Disposition: attachment; filename=\”{$file}\”\n”;
$content .= “Content-Transfer-Encoding: base64\n”;
$content .= “\n”;
$content .= chunk_split(base64_encode(file_get_contents(“./pdf/”.$file)));
$content .= “–BOUNDARY\n”;

if(mb_send_mail($to, $title, $content,$header)){
echo “メールを送信しました”;
} else {
echo “メールの送信に失敗しました”;
}
?>
</body>
</html>

添付ファイルは本文につっつける形になるみたいです。