2014-02-06 192 views
-1

我正在學習如何發送郵件與PHP,所以我在XAMPP本地測試它。我使用的是水星我的郵件服務器,和我以前this guide設置它,但是當我嘗試發送郵件我收到此錯誤信息:Php錯誤本地發送郵件與SMTP服務器

Warning: mail(): Failed to connect to mailserver at "grid2i-ent.seg.att.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in E:\xampp\htdocs\userSystem\etest.php on line 7 

這是我的PHP代碼:

$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'From: [email protected]' . "\r\n"; 

mail("[email protected]", "Subject", "Hello", $headers);//This is line 7 

這裏是我的php.ini郵件設置:

SMTP = grid2i-ent.seg.att.com 
smtp_port = 25 
+0

您的SMTP服務器可能存在問題 - 您可以隨時嘗試其他服務器。 –

回答

0

我敢打賭,這是你的防火牆 - 但這裏是我的建議

1)。把「標題」拿出來 - 你並不需要這些 - 至少在你發送測試消息給自己的時候,實際上並沒有HTML內容。 2)。使用不同的SMTP服務器 - 可能是您的個人Gmail帳戶提供的服務器。 3)。如果您的SMTP服務器與「本地主機」不在同一地點,則[email protected]將不起作用

-1

嘗試使用電子郵件庫一樣PHPMailer

+0

如果它是SMTP服務器的問題,則沒有庫可以工作。 –

+0

PHP中的mail()函數不能僅在php.ini中正確配置的SMTP服務器上運行。您還需要正確配置郵件服務器。使用PHPMailer,您無需擔心服務器上的任何配置。只需將SMTP地址和端口提供給PHPMailer。 – vlad1918

+0

如果smtp服務器配置不正確,那麼你使用什麼並不重要---另外,我記得能夠使用mail()而不需要任何配置,而且還可以使用這些庫(我親自使用SwiftMailer) - 讓事情遠離垃圾郵件 - 但是,我再次運行Linux,所以它可能會自動配置。 –

相關問題