PHPMailer给我“noname”附件

时间:2013-01-07 14:15:56

标签: php phpmailer email-attachments

我的问题与this完全一样,我收到没有扩展名的附件,如果我手动将扩展名放到文件中,文件仍然无法识别。什么可能导致这种情况?

这是附件添加部分,其余是标准:

  foreach($_FILES['uploads']['name'] as $key => $file){
    $mail->attachment[] = array($_FILES['uploads']['tmp_name'][$key], $_FILES['uploads']['name'][$key]);
    $mail->boundary = "_b" . md5(uniqid(time()));
  }

编辑:

在每个附件的开头我都明白了:

name="phpmailer.inc.php"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="phpmailer.inc.php"

这是正常的吗?

编辑: 此外,我将文件复制到服务器,然后我将它们添加到附件中,所有文件都是“noname”并且大小正确。

1 个答案:

答案 0 :(得分:0)

我认为您不能将$_FILES['uploads']['tmp_name'][$key]文件用作附件,因为$_FILES['uploads']['tmp_name']是临时文件。

首先,您需要将该文档/文件上传到服务器,然后将其附加到邮件中。不仅仅是它会起作用。