联系表单中的PHP错误?

时间:2015-05-23 02:32:52

标签: php forms syntax-error

我正在尝试创建一个向我的电子邮件帐户(Google)发送电子邮件的联系表单。我找到了一个很好的教程,复制了代码并用我需要的东西替换了一些代码(使用了一个教程,因为我对PHP和这个领域完全是绿色的。)我需要一个表单,它从我的网站向我发送电子邮件但不重定向单击“提交”按钮时显示不同的页面。我只想说“成功”或“发生错误。”

我的问题是在XAMPP中我点击提交按钮并收到以下错误: 注意:未定义的索引:第2行的C:\ xampp \ htdocs \ THV \ process.php中的名称

注意:未定义的索引:第3行的C:\ xampp \ htdocs \ THV \ process.php中的电子邮件

注意:未定义的索引:第4行的C:\ xampp \ htdocs \ THV \ process.php中的消息 您的消息已发送!

所以即使它发送了消息,我的电子邮件中也没有收到电子邮件。

我的问题是如何创建一个表单,向我发送表单框输入的电子邮件并获取此php不更改页面但在提交按钮下方显示“您的邮件已发送”? 这是我的代码:

<?php $name=$_POST['name'];
 $email=$_POST['email'];
 $message=$_POST['message'];
 $from='From: Test';
 $to='versionabstracts@gmail.com';
 $subject='Test';
 $body="From: $name\n E-Mail: $email\n Message:\n $message";
 if ($_POST['submit']) {
  /* Anything that goes in here is only performed if the form is submitted */
}
if ($_POST['submit']) {
  if (mail ($to, $subject, $body, $from)) {
    echo'<p>Your message has been sent!</p>';
  }
  else {
    echo'<p>Something went wrong, go back and try again!</p>';
  }
}
?>
<div class="container">
  <div class="row">
    <div class="five columns">
      <form method="post" action="process.php">
        <label>Name</label>
        <input name="" placeholder="Name">
        <label>Email</label>
        <input name="" type="email" placeholder="Email">
        <label>Message</label>
        <textarea name="" placeholder="Message"></textarea>
        <input id="submit" name="submit" type="submit" value="Submit">
      </form>
    </div>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

输入字段的name属性用于PHP中$_POST数组的索引。

未在HTML代码中设置name属性。出于这个原因,例如$_POST['name']无法解析,导致消息。

要解决此问题,请填写以下属性:

<div class="container">
  <div class="row">
    <div class="five columns">
      <form method="post" action="process.php">
        <label>Name</label>
        <input name="name" placeholder="Name">
        <label>Email</label>
        <input name="email" type="email" placeholder="Email">
        <label>Message</label>
        <textarea name="message" placeholder="Message"></textarea>
        <input id="submit" name="submit" type="submit" value="Submit">
      </form>
    </div>
  </div>
</div>