以下警告意味着什么?

时间:2011-09-11 20:30:32

标签: php email smtp

  <?php
   $to = "someone@example.com";
   $subject = "Test mail";
   $message = "Hello! This is a simple email message.";
   $from = "someonelse@example.com";
   $headers = "From:" . $from;
   mail($to,$subject,$message,$headers);
   echo "Mail Sent.";
 ?>

当我运行这些脚本时,我收到了这些错误

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost"
port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() 
in C:\xampp\htdocs\website\mail.php on line 7 

我现在要做什么?谁能告诉我这样做的方法?好的,我找到了这个文件但是我需要更新的字段是什么,你可以建议我一些代码,以便我将它们粘贴并保存吗?

3 个答案:

答案 0 :(得分:2)

您必须使用有效的smtp服务器和电子邮件地址配置php.ini。

答案 1 :(得分:1)

您需要将PHP配置为使用有效的SMTP服务才能发送SMTP电子邮件。这是讨论主题的article

基本上,您的PHP实例的SMTP配置似乎使用默认值,该值指向localhost。但您的本地计算机似乎没有运行SMTP服务。因此,您需要指向运行一个服务器的服务器,以及允许您的应用程序使用的服务器。

答案 2 :(得分:1)

我猜这个问题与your other question ...

相同

如果是这样,我想您正试图通过GMail的SMTP服务器发送电子邮件。他们的服务器需要身份验证,PHP的邮件功能不支持。 正如我在另一个问题中回答你的那样,你可以使用Zend_Mail来做到这一点。您也可以像其他问题中的示例一样使用PEAR Mail。 无论哪种方式,您都需要下载一些外部文件,将其包含在您的代码中并使用它。