添付ファイル付きのメールの送信に問題があります。私はこの機能を持っています:
function mail_att($to, $subject, $message, $anhang) {
$absender = "Sender";
$absender_mail = "noreply@example.org";
$reply = "noreply@example.org";
$path = $anhang;
$uploadname = "Anhang.pdf";
$trenner = md5( time() );
// Mail Header
$mailheader = "Reply-To: " .$absender. "<" .$absender_mail. ">\r\n";
$mailheader .= "Return-Path: ".$absender_mail."\r\n";
$mailheader .= "Message-ID: <".$absender_mail.">\r\n";
$mailheader .= "X-Mailer: PHP v" .phpversion(). "\r\n";
$mailheader .= "From: ".$absender."<".$absender_mail.">\r\n";
$mailheader .= "MIME-Version: 1.0\r\n";
$mailheader .= "Content-Type: multipart/mixed;\r\n";
$mailheader .= " boundary = " .$trenner;
$mailheader .= "\r\n\r\n";
// Mailbody
$mailbody = "This is a multi-part message in MIME format\r\n";
$mailbody .= "--" .$trenner. "\r\n";
$mailbody .= "Content-Type: text/html; charset=UTF-8\r\n";
$mailbody .= "Content-Transfer-Encoding: 8bit\r\n\r\n";
$mailbody .= $message. "\r\n\r\n";
// Attachment
$mailbody .= "--" .$trenner. "\r\n";
$mailbody .= "Content-Type: application/pdf; name=\"" .$uploadname. "\"\r\n";
$mailbody .= "Content-Transfer-Encoding: base64\r\n";
$mailbody .= "Content-Disposition: attachment; filename=\"" .$uploadname. "\"\r\n\r\n";
$mailbody .= chunk_split( base64_encode( file_get_contents( $path ) ) );
$mailbody .= "\n";
// Send
mail( $to, htmlspecialchars( $subject ), $mailbody, $mailheader );
}
しかし、メールを送信したいとき、何も届きません。問題はどこですか?私は正しい受信者の電子メールを入力したと確信しています! また、通常のメールは正常に機能するため、メールサーバーに問題はありません。
解決済み
ああ、phpmailer を使うとは思いもしませんでした。これにより、すべてが簡単になり、機能します。私のすべての仕事は無料です。