使用Bootstrap 4和PHP发送邮件

时间:2018-09-18 05:34:18

标签: php email bootstrap-4 contact-form

我正在为一个客户在网站上工作,他当然需要一个有效的联系表。我的PHP技能很弱,所以我不想直接向大量示例发疯,而是直接寻求帮助。

这是我使用Bootstrap 4框架构建的表单:

<form id="contactForm" method="post" action="contact-form.php" role="form">
  <div class="messages"></div>
  <div class="controls"></div>
  <div class="form-row">
    <div class="form-group col-md-6">
      <label for="clientName">Your Name *</label>
      <input class="form-control" id="clientName" type="text" placeholder="Enter Your Name" required="required" data-error="Your name is required." />
      <div class="help-block with-errors"></div>
    </div>
    <div class="form-group col-md-6">
      <label for="petName">Your Pet's Name *</label>
      <input class="form-control" id="petName" type="text" placeholder="Pet Name" required="required" data-error="Your pet's name is required." />
      <div class="help-block with-errors"></div>
    </div>
  </div>
  <div class="form-row">
    <div class="form-group col-md-6">
      <label for="email">Email Address *</label>
      <input class="form-control id="email" type="email" placeholder="you@abc.def" required="required" data-error="Your email address is required.">
      <div class="help-block with-errors"></div>
    </div>
    <div class="form-group col-md-6">
      <label for="phone">Telephone Number</label>
      <input class="form-control" id="phone" type="text" placeholder="123-456-7890" />
    </div>
  </div>
  <div class="form-group">
    <label for="message">Message</label>
    <textarea class="form-control id="message" placeholder="Include any message here." rows="4" />
  </div>
  <div class="form-row">
    <div class="form-group col-md-6>
      <input class="btn btn-success" type="submit" value="Send Message" >
    </div>
  </div>
</form>

和似乎不起作用的PHP(重定向除外)。

<?php
  // If the client name and email don't match
  if($_POST['clientName'] != $_POST['email']){
    $youremail = 'myemail@domain.com';
    $body = "New Appointment Request
    <hr>
    From: $_POST[clientName]
    Pet Name: $_POST[petName]
    E-Mail: $_POST[email]
    Phone: $_POST[phone]
    Message: $_POST[message]";
    if( $_POST['email'] && !preg_match( "/[\r\n]/", $_POST['email']) ) {
      $headers = "From: $_POST[email]";
    } else {
      $headers = "From: $youremail";
    }
    mail($youremail, 'New Message', $body, $headers );
  }
  header('Location:contact-redir.html');
?>

我是否缺少完成这项工作的关键细节?还是对于现代邮件客户端而言,mail()函数是否太旧/不安全?

0 个答案:

没有答案