【问题标题】:email header format (PHP)电子邮件标题格式 (PHP)
【发布时间】:2017-07-21 05:39:12
【问题描述】:

谁能告诉我我在这方面哪里出错了?我正在从数据库中的 blob 向电子邮件添加附件。我假设这个标题的格式不正确,但是已经花了一整天的时间,仍然无法让它工作!

$semi_rand = md5(time()); 
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; 
$headers2 = array(
'From: ' . $fromName . ' < ' . $fromEmail . ' > ', 
'BCC: will.evans.1972@gmail.com',
'MIME-Version: 1.0',
'Content-Type: multipart/mixed;',
'boundary='.$mime_boundary, 
);
// multipart boundary 
$body = '--'.$mime_boundary.'\n' ;
$body .= 'Content-Type: text/html; charset=\"iso-8859-1\"\n';
$body .= $message ; 
$body .= '--'.$mime_boundary.'\n';

// preparing attachments
  global $wpdb;
  $data = $wpdb->get_var("SELECT documentblob FROM quote");
    $data = chunk_split(base64_encode($data));

    $fname1='quotation.pdf';

$body .= 'Content-Type: {"application/octet-stream"};\n';
$body .= 'name="'.$fname1.'"\n'. 
$body .= 'Content-Disposition: attachment;\n';
$body .= 'filename="'.$fname1.'"\n';
$body .= 'Content-Transfer-Encoding: base64\n\n'; 
$body .= $data . '\n\n';
$body .= '--'.$mime_boundary.'\n';

wp_mail($to, $subject, $body, $headers2);

【问题讨论】:

  • 手动滚动您的电子邮件可能是一个巨大的错误。至少尝试使用像 PHPMailer 这样的库。
  • 这里支持 PHPMailer 的使用,并建议您不要手动轰炸自己的标题。
  • 在这种情况下这是不可能的,我仅限于使用 wp_mail(Wordpress 邮件程序)并且无法将 blob 添加为附件。它可以做附件....但我在平台上没有权限在附加之前将 blob 转换为文件。

标签: php email header mime


【解决方案1】:

你应该用另外两个炒作来关闭最后一个边界,所以你的最后一个身体线应该如下:

$body .= '--'.$mime_boundary.'--\n';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-03
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多