【问题标题】:Form in html not getting redirected to PHP filehtml中的表单没有被重定向到PHP文件
【发布时间】:2018-06-05 17:11:45
【问题描述】:

我正在使用引导程序和 CSS 创建一个简单的 HTML 网站,并使用 PHP 进行表单处理。我正在使用 POST 方法将表单的值提交到我试图接收值并打印它们的 PHP 文件。但是,当我按下表单上的提交按钮时,HTML 页面没有被重定向到表单的 action 元素中的 PHP 文件。它只是卡在 HTML 页面上。请查看下面的代码并帮助我弄清楚为什么表单的值没有提交到 PHP 文件中。

这是 HTML 文件中表单的代码:

<div class="container">
  <div class="row">
    <div class="contact-form">
      <form action="contact.php" method="post" id="contact-form" role="form">
        <fieldset>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" name="fullname" class="form-control" id="full-name" placeholder="Full Name*" data-error="Full name is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="email" name="email" class="form-control" id="email" placeholder="Email Address*" data-error="Email is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" name="phone" class="form-control" placeholder="Phone number" id="phone" data-error="Phone number is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" class="form-control" placeholder="Subject*" name="subject" id="subject" data-error="Subject is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-12">
            <div class="form-group">
              <textarea cols="40" rows="10" name="message" class="textarea form-control" placeholder="Your Message" id="message" data-error="Message is required" required></textarea>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-4">
            <div class="form-group">
              <button class="btn-send" type="submit" name="submit">Send</button>
            </div>
          </div>
          <div class="col-sm-12">
            <div class='form-response'></div>
          </div>
        </fieldset>
      </form>
    </div>
  </div>
</div>

contact.php 文件如下所示:

<?php
if ( isset( $_POST['submit'] ) ) {
  $fullName = $_POST['fullname'];
  $email = $_POST['email'];
  echo 'Your name is ' . $fullName .' and your email ID is' . $email;
}
?>

我一直无法弄清楚到底是什么问题。请查看此代码并帮助我解决此问题。提前致谢。

【问题讨论】:

  • 按 F12 并查看网络选项卡。如果您打算使用脚本提交它,也永远不要以name="submit" 的形式调用任何东西。你也许有一个表单插件?表格按原样工作
  • 为什么不使用name="submit"?我不认为我正在使用表单插件。它只是 HTML。检查网络选项卡后,我发现我收到以下错误:找不到对象!在此服务器上找不到请求的 URL。 The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.@mplungjan
  • name=submit 将隐藏表单的提交事件/方法。 The requested URL was not found on this server 似乎告诉了你一切。如果你得到一个 404,你的 php 就不是你想的那样
  • 我点击提交按钮后检查它不是在寻找我的“contact.php”文件,而是在寻找一些不存在的奇怪php文件,它的目录是@987654326 @。我不明白为什么。
  • 这确实很奇怪。

标签: php html css forms post


【解决方案1】:

它应该工作。你确定contact.php文件和这个html页面在同一个文件夹吗?

【讨论】:

  • 这应该是评论而不是答案
【解决方案2】:

将 php 代码放在同一个文件中。 使用这个html

<div class="container">
  <div class="row">
    <div class="contact-form">
      <form action="" method="post">
        <fieldset>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" name="fullname" class="form-control" id="full-name" placeholder="Full Name*" data-error="Full name is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="email" name="email" class="form-control" id="email" placeholder="Email Address*" data-error="Email is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" name="phone" class="form-control" placeholder="Phone number" id="phone" data-error="Phone number is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-6">
            <div class="form-group">
              <input type="text" class="form-control" placeholder="Subject*" name="subject" id="subject" data-error="Subject is required" required>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-12">
            <div class="form-group">
              <textarea cols="40" rows="10" name="message" class="textarea form-control" placeholder="Your Message" id="message" data-error="Message is required" required></textarea>
              <div class="help-block with-errors"></div>
            </div>
          </div>
          <div class="col-sm-4">
            <div class="form-group">
              <button class="btn-send" type="submit" name="submit">Send</button>
            </div>
          </div>
          <div class="col-sm-12">
            <div class='form-response'></div>
          </div>
        </fieldset>
      </form>
    </div>
  </div>
</div>

【讨论】:

  • 我确实修改过再试一次
【解决方案3】:

您的代码运行良好。确保您的文件夹在正确的位置 (例如:在 wamp 中,您的文件夹必须在 www 文件夹内)。并确保您的服务器正在运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-19
    • 1970-01-01
    • 2020-08-09
    • 1970-01-01
    • 2013-03-08
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    相关资源
    最近更新 更多