作者BeLOveRX (我是鐵板,小心踢到)
看板PHP
標題[請益] PHPMailer 寄出空白信
時間Fri Apr 10 17:23:12 2015
是這樣子的
目前手上有個case 是用 phpmailer 在發信
因為對方需求不一樣 所以msghtml() 的內文
都是用 file_get_contents 取得美工設計好的 html 樣板
$body = file_get_contents("mail.html");
$mail->AddAttachment('Sample.png','The Sample DM');
$mail->MsgHTML($body);
原本在 linux 的 command line 底下用 php sendmail.php 是可以寄信
收到的信件也是可以看到HTML內文以及附件圖檔
但是同樣的 sendmail.php 丟到 htdocs 的目錄下去透過瀏覽器去執行時
(
http://localhost/sendmail.php)
收到的信件內文反而是空白的,連附件圖檔都沒有
不知道有什麼地方我忽略了呢 ?
還煩請開導一下 @@
喔對,如果用Example的方式
$body = "<html><body>.......</body></html>";
這樣的方式是可行的
--
PHP 版本 5.3
PHPMailer版本
https://github.com/PHPMailer/PHPMailer
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.191.81
※ 文章網址: https://webptt.com/m.aspx?n=bbs/PHP/M.1428657797.A.1E8.html
※ 編輯: BeLOveRX (1.34.191.81), 04/10/2015 17:24:35
1F:→ y2468101216: dir問題,你用php執行的dir路徑跟browser不同 04/10 17:33
2F:→ y2468101216: 你check一下檔案在不在 04/10 17:33
有確定檔案是在的
在瀏覽器端 var_dump 是可以看到file_get_contents的內容
附件也是
一開始其實有注意到這件事情,所以其實在檔案的位置上其實有加上了實際路徑上去
※ 編輯: BeLOveRX (1.34.191.81), 04/10/2015 17:46:47
3F:推 crossdunk: 你先echo $body 然後把整個貼上新的HTML試試看 04/10 19:31
在瀏覽器上 echo $body 是有呈現 HTML出來
4F:推 crossdunk: 還是內容是只有圖片? 如果是的話美工在做的時候 04/10 19:33
5F:→ crossdunk: 要注意用絕對路徑 不能用相對路徑 04/10 19:33
內容只有純HTML排版 @@
6F:→ tper8042: 編碼呢? 04/10 22:07
html 檔案跟 PHPMailer 的$mail->CharSet 都是 UTF-8
7F:→ arrack: 有用iconv? 04/11 09:36
沒有使用iconv
※ 編輯: BeLOveRX (1.34.191.81), 04/13/2015 09:53:33
8F:推 localhost: 路徑問題 04/15 13:41