2012-11-02 35 views
3

我有和PHP郵件程序的問題。使用mamp該腳本可以工作,但在服務器上出現錯誤(我忽略了敏感信息)。PHP梅勒錯誤:梅勒錯誤 - 必須提供至少一個收件人的電子郵件地址

"Invalid address: [valid email] Mailer Error: You must provide at least one recipient email address."

繼承人我的代碼:

require_once("includes/phpmailer/class.phpmailer.php"); 

    $mail = new PHPMailer(); 
    $mail->IsSMTP(); 

    $mail->SMTPAuth = true;     
    $mail->Host  = "smtp.emailsrvr.com"; 
    $mail->SMTPDebug = 2;      
    $mail->Port  = 25;      
    $mail->Username = "[email protected]"; 
    $mail->Password = "test"; 

    $mail->Subject = "Subject"; 

    $mail->SetFrom($_POST['email'], $_POST['name']); 
    $mail->AddReplyTo($_POST['email'], $_POST['name']); 

    $address = "[email protected]"; 
    $mail->AddAddress($address, "name"); 

    $body = "<p>test</p>"; 

    $mail->MsgHTML($body); 


    if(!$mail->Send()) { 
     echo "Mailer Error: " . $mail->ErrorInfo; 
    } else { 
     echo "Message sent!"; 
    } 

如果有幫助,我使用的是Rackspace的電子郵件應用程序。

不幸的是,不幸的是,php或服務器的設置很不幸,所以如果任何人都可以提供幫助,那就太好了!

+3

*「無效地址:[有效電子郵件]」*的哪一部分很難理解? '[有效的電子郵件]'只是不是一個有效的電子郵件地址。改用一個有效的。 – hakre

+0

嗨hakre,通過[有效的電子郵件]我的意思是我在該變量中使用了一個有效的電子郵件。對不起,我現在已經解決了這個問題。 – Tom

回答

0

所以我在這裏沒有運氣,但我現在知道這個問題源於服務器郵件設置,而不是腳本。

最後我剛去使用郵戳。

3

這行只要改變:

$address = "[valid email]"; 

喜歡的東西:

$address = "[email protected]"; 

或您自己的電子郵件,因此您可以測試更好,它會工作。

這只是說明'[有效的電子郵件]'實際上並不是「有效的電子郵件」。

+0

對不起,通過[有效的電子郵件]令人困惑,我的意思是我寫了一封適用於該變量的電子郵件。我剛剛寫了[有效的電子郵件]以保護電子郵件的身份。即使是「[email protected]」,它仍然不起作用。 :( – Tom

+0

您在郵​​件中改變它太,然後 好吧,那麼我會嘗試 '$ MAIL-> AddAddress($地址);?' 要測試功能 –

0

當我的類名和函數名相同時,我遇到了這個問題。比我更改函數的名稱,它已解決。希望它能幫助任何人。