2

私の問題はこれとまったく同じです。拡張子のない添付ファイルを取得しています。ファイルに拡張子を手動で付けても、ファイルはまだ認識されません。何が原因でしょうか?

これはアタッチメントを追加する部分で、残りは標準です。

  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」であり、正しいサイズです。

4

1 に答える 1

0

$_FILES['uploads']['tmp_name'][$key]ファイルを一時ファイルのように添付ファイルとして使用することはできないと思い$_FILES['uploads']['tmp_name']ます。

まず、そのドキュメント/ファイルをサーバーにアップロードしてから、メールに添付する必要があります。それだけで動作します。

于 2013-01-07T14:18:53.013 に答える