【问题标题】:My php Contact Form on Website isn't Working我在网站上的 php 联系表不起作用
【发布时间】:2020-05-06 14:34:24
【问题描述】:

我网站上的 php 联系表无法正常工作。模板来自引导程序。如何获取/构建表单正常工作所需的 PHP/AJAX?我还缺少什么?这是我的contact.php 表单。我欢迎任何反馈!谢谢

    <?php
if(!empty($_POST["send"])) {
    $name = $_POST["Name"];
    $email = $_POST["Email"];
    $subject = $_POST["subject"];
    $content = $_POST["content"];

    $toEmail = "admin@examplewebsite.com";
    $mailHeaders = "From: " . $name . "<". $email .">\r\n";
    if(mail($toEmail, $subject, $content, $mailHeaders)) {
        $message = "Your contact information is received successfully.";
        $type = "success";
    }
}
require_once "contact-view.php";
?>

这是我的 contact.html 代码的副本

<div class="col-lg-6">
            <form action="forms/contact.php" method="post" role="form" class="php-email-form">
              <div class="form-row">
                <div class="col-md-6 form-group">
                  <input type="text" name="name" class="form-control" id="name" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" />
                  <div class="validate"></div>
                </div>
                <div class="col-md-6 form-group">
                  <input type="email" class="form-control" name="email" id="email" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" />
                  <div class="validate"></div>
                </div>
              </div>
              <div class="form-group">
                <input type="text" class="form-control" name="subject" id="subject" placeholder="Subject" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" />
                <div class="validate"></div>
              </div>
              <div class="form-group">
                <textarea class="form-control" name="message" rows="5" data-rule="required" data-msg="Please write something for us" placeholder="Message"></textarea>
                <div class="validate"></div>
              </div>
              <div class="mb-3">
                <div class="loading">Loading</div>
                <div class="error-message"></div>
                <div class="sent-message">Your message has been sent. Thank you!</div>
              </div>
              <div class="text-center"><button type="submit">Send Message</button></div>
            </form>
          </div>

【问题讨论】:

  • 什么“不起作用”?你有任何错误吗?您的 HTML 表单是什么样的?通过 PHP 的mail 发送电子邮件是一项棘手的工作。我推荐 PHPMailer 或类似的库,它能够使用像 GMail 这样的远程 SMTP 服务
  • 您好,感谢您的回复。当我尝试在我的网站上发送电子邮件时,它不会发送到我的收件箱,它只是持续加载。我没有 HTML 表单。我需要一个从我的站点发送电子邮件吗?我还需要什么其他形式、脚本、插件等?您能否详细说明 PHPMailer 以及如何正确使用它?谢谢

标签: php html ajax forms contacts


【解决方案1】:

if(!empty($_POST["send"])) {

在这里检查名为send 的输入是否不为空。

但是您的 HTML 代码没有任何名为 send 的输入。

只需在&lt;form&gt; 中的某处添加&lt;input type="hidden" name="send" value="1"&gt;

【讨论】:

  • 更好的是,命名提交按钮
  • 我已将其添加到联系表单中,但仍然无法正常工作。
猜你喜欢
  • 1970-01-01
  • 2021-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-27
  • 2011-04-20
  • 1970-01-01
相关资源
最近更新 更多