无法提交表单-请检查一下吗?

时间:2019-07-05 19:59:51

标签: php forms post submit dreamweaver

我一直在寻找一种在表单提交上进行编码的方法,以便将信息发送到服务器,然后直接发送到我的电子邮件中。

我看过各种在线教程,甚至更改了第一个不起作用时使用的方法。 我遵循了这封信的指示(我相信),但是当我按Submit时,它将带我进入带有脚本的php页面,但选择告诉我它无法发送,并且我也没有收到电子邮件。

添加了一些代码(例如,如果所有其他代码均失败,则最后一个标头中的-f电子邮件是说明的一部分)。

我想知道是否可能是由于在Dreamweaver中设置了表单,所以已经设置了诸如“ required”之类的选项。 我是否应该为每个条目和“提交”按钮删除一些其他设置? 我喜欢这样,我可以在Dreamweaver中设置表单时检查“必需”,因为它很容易并且有几种不同的表单,然后在此处进行设置而不是在javascript或php中添加其他验证代码更为简单。 / p>

我只是担心Dreamweaver中自动创建的设置可能会否定php和javascript中的设置。

我想问的唯一方法是先添加表单代码,然后添加php文件代码,以查看是否缺少非常简单的内容。

我的目标只是接收电子邮件,而不是让一个人必须经历mailto流程,并且还可以防止垃圾邮件和多封电子邮件。 从表格中您可以看到,有些标记为“必需”,有些则没有,我想尽可能保留这些。

请注意,出于隐私保护的考虑,我已将电子邮件更改为“普通”。

表单代码(在一个名为Contactus.php的文件中-我最初将其命名为html文件,然后将其更改为php文件)

<form method="post" id="ContactForm" action="testacknowledge.php">
    <p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: bold; font-weight: 300; font-size: large;">
              <label for="Name">*Name:</label>
              <input name="Name" type="text" required="required" id="Name" form="ContactForm" size="50" maxlength="80">
              <label for="email"><br>
                <br>
              *Email:</label>
              <input name="Email" type="email" required="required" id="email" form="ContactForm" size="40" maxlength="60">
              <label for="tel"><br>
                <br>
                Phone:</label>
              <input name="Phone" type="tel" id="tel" form="ContactForm" size="30">
           &nbsp;</p>
            <p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 300; font-size: large;">
              <label for="Time Zone">Time Zone:</label>
              <select name="Time Zone" id="Time Zone" form="ContactForm">
                <option>Eastern</option>
                <option>Central</option>
                <option>Mountain</option>
                <option>Pacific</option>
                <option>Alaska</option>
                <option>Hawaii</option>
                <option>Other</option>
              </select>
              <br>
              <span style="font-style: normal; font-weight: 400; font-size:small">
            <p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 300; font-size: large;">
              <label for="Call Before">Best Time to Call:&nbsp;</label>
              <select name="Call After" id="Best Time" form="ContactForm">
    <option value="00:00">12.00 AM</option>
    <option value="01:00">01.00 AM</option>
    <option value="02:00">02.00 AM</option>
    <option value="03:00">03.00 AM</option>
    <option value="04:00">04.00 AM</option>
    <option value="05:00">05.00 AM</option>
    <option value="06:00">06.00 AM</option>
    <option value="07:00">07.00 AM</option>
    <option value="08:00">08.00 AM</option>
    <option value="09:00" selected="">09.00 AM</option>
    <option value="10:00">10.00 AM</option>
    <option value="11:00">11.00 AM</option>
    <option value="12:00">12.00 PM</option>
    <option value="13:00">01.00 PM</option>
    <option value="14:00">02.00 PM</option>
    <option value="15:00">03.00 PM</option>
    <option value="16:00">04.00 PM</option>
    <option value="17:00">05.00 PM</option>
    <option value="18:00">06.00 PM</option>
    <option value="19:00">07.00 PM</option>
    <option value="20:00">08.00 PM</option>
    <option value="21:00">09.00 PM</option>
    <option value="22:00">10.00 PM</option>
    <option value="23:00">11.00 PM</option>
</select>

    <label for="Call Before">to</label>
    <select name="Call Before" id="Call Before" form="ContactForm">
      <option value="01:00">01.00 AM</option>
      <option value="02:00">02.00 AM</option>
      <option value="03:00">03.00 AM</option>
      <option value="04:00">04.00 AM</option>
      <option value="05:00">05.00 AM</option>
      <option value="06:00">06.00 AM</option>
      <option value="07:00">07.00 AM</option>
      <option value="08:00">08.00 AM</option>
      <option value="09:00">09.00 AM</option>
      <option value="10:00">10.00 AM</option>
      <option value="11:00">11.00 AM</option>
      <option value="12:00">12.00 PM</option>
      <option value="13:00">01.00 PM</option>
      <option value="14:00">02.00 PM</option>
      <option value="15:00">03.00 PM</option>
      <option value="16:00">04.00 PM</option>
      <option value="17:00">05.00 PM</option>
      <option value="18:00">06.00 PM</option>
      <option value="19:00">07.00 PM</option>
      <option value="20:00" selected="">08.00 PM</option>
      <option value="21:00">09.00 PM</option>
      <option value="22:00">10.00 PM</option>
      <option value="23:00">11.00 PM</option>
      <option value="00:00">12:00 AM</option>
      </select>
            </p>
            <p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 300; font-size: large;">
              <label for="Comments">*Comments/Questions:<br>
              </label>
              <textarea name="Comments" cols="55" rows="6" required="required" id="Comments" form="ContactForm"></textarea>
              <br>
          </p>
            <p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: oblique; font-weight: 300; font-size: medium;">*required</p>
            <p>
              <input name="reset" type="reset" id="reset" form="ContactForm" value="Reset">
              <input name="submit" type="submit" id="submit" form="ContactForm" formenctype="text/plain" value="Submit">
            </p>
          </form>

这是我完整的testacknowledge.php文件,该文件以上面的表单操作命名:


<?php
if(isset($_POST['submit'])) {

$to = 'me@hotmail.com';
$subject = 'New Submission from Contact Form';
$message = 'Name: '. $_POST['Name'] . "\r\n\r\n";
$message .= 'Email: '. $_POST['Email'] . "\r\n\r\n";
$message .= 'Phone: '. $_POST['Phone'] . "\r\n\r\n";
$message .= 'Time Zone: '. $_POST['Time Zone'] . "\r\n\r\n";
$message .= 'Call After: '. $_POST['Call After'] . "\r\n\r\n";
$message .= 'Call Before: '. $_POST['Call Before'] . "\r\n\r\n";
$message .= 'Comments: '. $_POST['Comments'];

$headers .= "From: info@website.com\r\n";
$headers .= 'Content-Type: text/plain; charset=utf-8';
    $email = filter_input(INPUT_POST, 'Email', FILTER_VALIDATE_EMAIL);
    if ($email) {
        $headers .= "\r\nReply-To: $email";
    }
$success = mail($to, $subject, $message, $headers, '-fme@hotmail.com');
}
?>


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>

<body>
<?php if (isset($success) && $success) { ?>
<h1>Thank you</h1> Your message has been sent.
<?php } else { ?>
Sorry, there was a problem sending your message.
<?php } ?>

</body>
</html>

提交后,testacknowledge页面打开,并显示“对不起,发送您的消息时出现问题。”并且没有收到电子邮件。

很抱歉,这个问题似乎有很多,但是许多人没有使用上述方法,因此找不到适合我的答案。 我感谢每个人的时间,因为我知道每个人都很忙。

谢谢。

0 个答案:

没有答案