0

我无法使用 PHP mail() 函数发送邮件。我收到一条错误消息。它有什么问题?请帮我...

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 E:\xampp\htdocs\SimpleEmail.php on line 14

Email could not be sent.

 <html>
          <head>
            <title>Simple Send Mail Form</title>
        </head>
         <body>
          <h1>Mail Form</h1>
        <form name="form1" method="post" action="SimpleEmail.php">
       <table>
         <tr><td><b>To</b></td><td><input type="text" name="mailto" size="35"></td></tr>
            <tr><td><b>Subject</b></td>
      <td><input type="text" name="mailsubject" size="35"></td></tr>
        <tr><td><b>Message</b></td>
      <td><textarea name="mailbody" cols="50" rows="7"></textarea></td>
      </tr>
         <tr><td colspan="2">
        <input type="submit" name="Submit" value="Send">
      </td>
        </tr>
        </table>
   </form>
      </body>
     </html>  

      //SimpleEmail.php//

         <?php
      if (empty ($mailto) ) {
    die ( "Recipient is blank! ") ;
    }

if (empty ($mailsubject) ){
   $mailsubject=" " ;
}

if (empty ($mailbody) ) {
   $mailbody=" " ; 
}

$result = mail ($mailto, $mailsubject, $mailbody) ;

if ($result) {
   echo "Email sent successfully!" ;
}else{
   echo "Email could not be sent." ;
}
?>
4

5 回答 5

0

您可以按照本教程中的给定步骤尝试在本地主机中测试您的 PHP 邮件脚本。 http://blogs.bigfish.tv/adam/2009/12/03/setup-a-testing-mail-server-using-php-on-mac-os-x/

愿它对你有所帮助。

于 2013-02-08T08:56:55.253 回答
0

不用担心...在我们的本地服务器中,其中许多不基于 SMTP(简单邮件传输协议)运行,因此我们不会发送邮件,但某些服务器可能会在其上运行,如果您配置为 SMTP 协议端口,那么您可以也送他们

于 2013-02-08T08:33:42.997 回答
0

该错误信息意味着您需要安装 SMTP 服务器才能让邮件功能正常工作。
由于您使用 xampp,您可以配置 XAMPP 附带的 Mercury Server ..
一旦您安装并配置它,邮件功能将正常工作..

于 2013-02-08T08:32:55.780 回答
0

您没有运行自己的邮件服务器,也没有配置为使用其他人的邮件服务器。那么邮件会去哪里呢?与系统管理员或托管服务提供商交谈。

于 2013-02-08T08:31:49.173 回答
0

使用以下代码发送电子邮件

ini_set("SMTP","aspmx.l.google.com");
$to = "yourmailid@gmail.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "toemail@gmail.com";
$headers  = 'From: '.$from. "\r\n" .
            'Reply-To: '.$from. "\r\n" .
            'MIME-Version: 1.0' . "\r\n" .
            'Content-type: text/html; charset=iso-8859-1' . "\r\n" .
            'X-Mailer: PHP/' . phpversion();
if(mail($to,$subject,$message,$headers)) echo "Mail Sent.";
于 2013-02-08T09:36:33.473 回答