2012-09-15 151 views
0

我想一個附加的文件發送給用戶沿着郵件PHP:發送在PHP郵件附件

我使用PHP郵件庫

 $mail->AddAddress($pr_email); 
     $mail->Subject = "Activate your account"; 
     $mail->AddAttachment($data); 
     $mail->IsHTML(true); 
     $mail->Body =$message; 

     if(!$mail->Send()) 
     { 
      echo "Error sending: " . $mail->ErrorInfo;; 
     } 

$data是由用戶上傳的圖像這裏怎麼我讀文件的價值,並在$數據變量存儲

$tmpName = $_FILES['file_upload']['tmp_name']; 
    $fp  = fopen($tmpName, 'r'); 
    $data = fread($fp, filesize($tmpName)); 
    $data = addslashes($data); 
    fclose($fp); 

可惜我只能夠接收郵件文本我沒有收到一起附加的文件郵件

請告訴我我做錯了什麼?

+0

我首先想到的是檢查的論據'AddAttachment()' - 你提供原始二進制數據,但也許它期待着一個文件路徑? – halfer

回答

0

你只需要提供文件路徑爲AddAttachment

$mail->AddAttachment($tmpName, $file_name); 

Check here

+0

@xda .. $ tmpName = $ _FILES ['file_upload'] ['tmp_name'];從這裏我得到的文件路徑現在當我做$ mail-> AddAttachment($ tmpName,'Anything'); 那還是不行? – user1667633

1
AddAttachment($path,$name,$encoding,$type); 

例如

$mail->AddAttachment("images/phpmailer.gif");  // attachment 
$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment 

瞭解更多信息,並附上其他類型的附件check this link