从PHP联系表单接收电子邮件

时间:2015-01-07 09:51:38

标签: php html email post

我没有使用php的经验,我只做前端开发。我想设置此联系表单给我发电子邮件。我使用的是example from htmldog.

这是我到目前为止所做的:

    <form action="contact.php" method="post">
      <div class="col-md-5 left">
        <input name="sender" type="text" class="name" placeholder="FULL NAME">
        <input name="senderEmail" type="text" class="email" placeholder="EMAIL">
        <input name="senderPhoneNumber" type="text" class="number" placeholder="PHONE NUMBER">
      </div>
      <div class="col-md-7 right">
        <textarea name="message" id="" cols="30" rows="10" placeholder="MESSAGE"></textarea>
        <input type="submit" class="submit" name="submit" value="SEND">
      </div>
    </form>

这是php代码:

<?php

if($_POST["submit"]) {
    $recipient="test@mailinator.com";
    $subject="Contact form";
    $sender=$_POST["sender"];
    $senderEmail=$_POST["senderEmail"];
    $senderPhoneNumber=$_POST["senderPhoneNumber"];
    $message=$_POST["message"];

    $mailBody="Ime: $sender\nEmail: $senderEmail\nTelefon: $senderPhoneNumber\n\n$message";

    mail($recipient, $subject, $mailBody, "From: $sender <$senderEmail>");
}

?>

所有这些都位于contact.php文件中,该文件显示整个联系页面。 php部分位于文件的最开头,在<!DOCTYPE html>声明之前。

编辑:抱歉不够清楚,表单由于某种原因无法运行,我想知道它是否有一些明显的编码错误,或者您是否看到其他原因导致它无法正常工作?

它的共享主机。

1 个答案:

答案 0 :(得分:0)

我以前一直坚持这个问题。虽然看起来很简单,但PHP邮件功能需要预先配置。

PHP mail function仅在您的计算机上有SMTP服务器时才有效。所以最有可能的是,虽然代码似乎是正确的,但它不适用于您的本地主机(它可能仍然适用于共享主机而没有任何更改)。

您可以使用自己的SMTP设置选择PHPMailer等替代方案。