2017-10-16 52 views
-3

我想获得一个联系表格使用mail function内置的工作,但我遇到了一些问题。PHP邮件提交

我想什么:

  • 在点击“提交”的形式发送给定义emailadres.php。
  • 如果发送成功,将显示确认消息。
  • 如果未发送,则显示错误消息。

什么正在发生的事情:

  • 确认消息已经显示在页面加载;无论提交表单。
  • 邮件未发送。我使用的是

代码:

if ($_POST["submit"]) { 
    mail ($to, $subject, $body, $from); 
    $sendErr = "Your message has been sent"; 
} else { 
    $sendErr = "Your message could not be sent"; 
} 

我相当新的这一切,所以任何搞清楚我的想法摊位,将不胜感激帮助。如果我需要发布更多部分的表单,我会。

+0

第一SEACH它https://stackoverflow.com/questions/5335273/how-to-send-an-email-using-php –

+1

你需要[这里](HTTPS ://github.com/PHPMailer/PHPMailer)library – hungrykoala

+1

确认消息正在显示,因为如果用户单击提交,您已经输入了成功消息。无论您的邮件功能是否运行成功消息都会显示。如果你在本地服务器上运行它,那么它不会工作,你需要安装邮件服务器。 –

回答

1

您使用的代码甚至不检查邮件是否成功发送,它只检查它提交的公式。如果邮件发送成功,mail()返回true,否则返回false。所以,你可以检查它的返回值:

if ($_POST["submit"]) { 
    $sent = mail ($to, $subject, $body, $from); 

    // Check here if the mail was sent or not 
    if ($sent) { 
     $sendErr = "Your message has been sent"; 
    } else { 
     $sendErr = "Your message could not be sent"; 
    } 
} 
+1

如果它仍然无法正常工作;尝试阅读此主题:https://stackoverflow.com/q/24644436/3578036 – JustCarty