2013-03-20 71 views
3

林內嵌入圖像嘗試我的郵件正文中嵌入的圖像,但它作爲附件添加郵件正文的PHPMailer類

$mailer->Subject = APP_NAME . " - " . $name . " send you and Ad : " . $row['name']; 
    $mailer->IsHTML(true); 
    $mailer->AddEmbeddedImage('../images/namDiams.png', 'logoimg', 'namDimes.png'); 

    //footer 
    $footer = "Regards<br/><br/>"; 
    $footer .= '<table style="width: 95%">'; 
    $footer .= '<tr>'; 
    $footer .= '<td>'; 
    $footer .= "<strong><span style='font-size: 15px'>NamDimes Team</span></strong><br/> 
        NamDimes<br/> 
        Contact Number: " . APP_CONTACT . "<br/> 
        Email: " . APP_EMAIL . "<br/> 
        Website: " . APP_WEBSITE . "<br/>"; 
    $footer .= '</td>'; 
    $footer .= '<td style="text-align:right">'; 
    $footer .= '<img src=\"cid:logoimg\" />'; 
    $footer .= '</td>'; 
    $footer .= '</tr>'; 
    $footer .= '</table>'; 

    $mailer->Body = $body . $footer; 
    $mailer->AltBody="This is text only alternative body."; 
    $mailer->AddAttachment('../' . $row['image_path'], $row['name'] . ".jpg"); 

我已經否則設置一切都結束了,包括地址,郵件獲取發送,我想嵌入身體的徽標圖像作爲附件附加,任何人都知道爲什麼?

+1

你的代碼似乎工作。一定要有最新的PHPmailer版本。順便說一句,恕我直言,你應該使用外部圖像,而不是嵌入式的。 – Ghigo 2013-03-20 08:43:04

+0

我沒有讓你在externel圖像部分,這種新的 – Lappies 2013-03-20 08:47:17

+0

只是簡單的'http://'鏈接。就像'http:// your.site.com/img/mypic.png' – Ghigo 2013-03-20 08:49:05

回答

5

不要使用$mailer->AddEmbeddedImage,而是直接添加

<img src="http://.../images/namDiams.png" />來代替。

郵件長度應該更輕...它的工作原理。

編輯

我不知道這是否會幫助你,但有一點錯誤的位置:

$mailer->AddEmbeddedImage('../images/namDiams.png', 'logoimg', 'namDimes.png'); 

應該

$mailer->AddEmbeddedImage('../images/namDiams.png', 'logoimg', 'namDiames.png');//the last param the second 'a' was missing... 

另一個話題here

+0

一些如何從img標籤中刪除src屬性,如果我這樣做 – Lappies 2013-03-20 09:04:18

-3

just gi (IMG SRC =「../ images/cat.jpeg)它將一定工作

+2

這絕對不行。 – Ghigo 2013-03-20 10:04:22

1

我可以確認user2189925的答案確實起作用。但是,我使用絕對路徑,因爲調用腳本的位置比圖像的位置更可能發生更改。
例如

<img src="C:\folder\images\namDiames.png" /> 
+0

指向硬盤上的本地文件將永遠不會顯示在實際的電子郵件中。所以這將永遠不會工作。 – Jordy 2016-06-07 09:21:10

+0

這對我有效。 PHPMailer非常聰明,可以通過將'src'屬性的值替換爲圖像的實際源數據來將圖像嵌入到電子郵件中。 – NathanW 2016-06-07 16:46:32

0

面臨着同樣的問題,於是我決定用

<img src= "https://mysitename.com/img/example.jpg"> 

替換下列

<img src="img/example.jpg" 

和它的工作。