iT邦幫忙

0

(已解決)PHPMailer 【SMTP Error: The following recipients failed:】 錯誤訊息

php

使用 PHPMailer 寄信
出現以下錯誤
**SMTP Error: The following recipients failed: **

但同一台電腦的另一個寄信程式沒問題,這個寄信程式卻有上述問題(設定是一樣的)

程式碼如下:

include("lib/PHPMailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = false;
$mail->Host = 'SMTP主機';
$mail->Port = SMTP主機的port;
$mail->CharSet = "utf-8";
$mail->Encoding = "base64";
$mail->WordWrap = 50;
$mail->Username="";
$mail->Password="";
$mail->From = "設定寄件者信箱";
$mail->FromName = "設定寄件者姓名";
$mail->Subject = "設定郵件標題";
$mail->IsHTML(true);
$mail->AddAddress($email, $tager_id);
$mail->Body =
				"
					郵件內容
				";
				if($mail->Send()) {
					msg("郵件已寄出,請至信箱確認。");
				} else {
					msg($mail->ErrorInfo);
				}
				$mail->ClearAddresses();
				exit;

請求協助,感激不盡/images/emoticon/emoticon41.gif

看更多先前的討論...收起先前的討論...
zyman2008 iT邦大師 9 級 ‧ 2017-12-12 06:57:34 檢舉
訊息太少, 把Debug開起來比較能知道是甚麼問題.
$mail->SMTPDebug = 1;
ak02 iT邦研究生 4 級 ‧ 2017-12-12 09:15:06 檢舉
你是用google的smtp嗎?
蠻多人有這樣的狀況
小斑 iT邦新手 4 級 ‧ 2017-12-12 11:09:57 檢舉
SMTP -> ERROR: RCPT not accepted from server: 454 4.7.1 : Relay access denied
小斑 iT邦新手 4 級 ‧ 2017-12-12 11:20:46 檢舉
是 $email 還是 $mail
小斑 iT邦新手 4 級 ‧ 2017-12-12 17:23:36 檢舉
本來是$mail
改成$email後,錯誤是顯示You must provide at least one recipient email address.
KUI iT邦新手 5 級 ‧ 2017-12-19 15:00:00 檢舉
問問喔.....你同一台的兩個程式,設定一樣,那你這兩個程式是在同一個檔案?還是同一個檔案夾?還是路徑不一樣??
小斑 iT邦新手 4 級 ‧ 2017-12-19 17:47:26 檢舉
兩個程式在同一個檔案夾,路徑一樣
小斑 iT邦新手 4 級 ‧ 2017-12-22 13:00:05 檢舉
已解決。

經過 ping ip -> 帶帳號和密碼做驗證 ->
到後來發現同一台電腦的另一個寄信程式,雖然有著同樣設定,
但其實是使用別的寄信服務發信的(有另外一段code,沒看清楚),
參考並修正後ok,主要修改使用別的SMTP主機發信。

1 個回答

0
浩瀚星空
iT邦新手 2 級 ‧ 2017-12-12 18:28:08

我不確定你這是因為要給我們看的才改的。
還是你真的就是這樣處理

$mail->From = "設定寄件者信箱";
這邊是需要email格式的。

要不然他會告知說需要至少一個寄件人。
假的email也沒關係。只要是email格式就好。

看更多先前的回應...收起先前的回應...
小斑 iT邦新手 4 級 ‧ 2017-12-13 09:36:23 檢舉

你好,是因為要給你們看的才改的/images/emoticon/emoticon06.gif
不過還是謝謝你

zyman2008 iT邦大師 9 級 ‧ 2017-12-13 12:13:42 檢舉

另一個沒問題的寄信程式, 有帶帳號和密碼做驗證嗎 ?

小斑 iT邦新手 4 級 ‧ 2017-12-19 17:50:33 檢舉

不好意思,最近比較忙,現在才回覆。

我是接手他人的程式修bug,但因為我自己也還不太懂,所以還不太會做驗證。

小斑 iT邦新手 4 級 ‧ 2017-12-22 13:02:45 檢舉

已解決。

經過 ping ip -> 帶帳號和密碼做驗證 ->
到後來發現同一台電腦的另一個寄信程式,雖然有著同樣設定,
但其實是使用別的寄信服務發信的(有另外一段code,沒看清楚),
參考並修正後ok,主要修改使用別的SMTP主機發信。

我要發表回答

立即登入回答