【问题标题】:Two separate forms one submit button两个单独的表单一个提交按钮
【发布时间】:2013-11-25 22:02:24
【问题描述】:

我希望通过单个提交按钮提交两个表单。对于这个特定的应用程序,我不能将它们组合成一种形式。我以前看过这方面的帖子,但还没有找到直接的答案。如何适当地修改我的 html 代码或 php 代码以使其正常工作?谢谢!

基本上,这是我想要结合的:

<form method="POST" action="mailer.php" id='form1'>
    <input type="checkbox" name="check[]" value="blue_color">Blue<br>
    <input type="submit" value="Submit" name="submit">
</form>

<form method="POST" action="mailer.php" id='form2'>
    <input type="checkbox" name="check[]" value="red_color">Red<br>
    <input type="submit" value="Submit" name="submit">
</form>

这是mailer.php:

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

    $to = "someone@someone.com"; 
    $subject = "Form Example";
    $name_field = $_POST['name'];
    $email_field = $_POST['email'];
    $message = $_POST['message'];
    $option = $_POST['radio'];
    $dropdown = $_POST['drop_down'];

    foreach($_POST['check'] as $value) {
        $check_msg .= "Checked: $value\n";
    }

    $body = "From: $name_field\n E-Mail: $email_field\n $check_msg Option: $option\n Drop-Down: $dropdown\n Message:\n $message\n";

    echo "Data has been submitted to $to!";
    mail($to, $subject, $body);

} else {
    echo "blarg!";
}
?>

【问题讨论】:

  • 使用 JavaScript 提交两者。
  • For this particular application I can't just combine them into one form - 为什么不呢?您希望回帖中的所有数据,因此将所有数据放在一个表单中似乎是一种不错的应用程序设计。
  • 请告诉大家为什么不能将表格合二为一。我觉得这很可疑。
  • 为了后人,我会回答。

标签: php html forms


【解决方案1】:

那么是什么阻止您将&lt;form&gt;...&lt;/form&gt; 放在手风琴外面?通常,手风琴的所有部分都是同一个 HTML 页面的一部分,不管用户可能怎么想。一切都是烟雾、镜子和动态可见性。

跨越多个列表项的表单没有任何问题。所以会有很多控制,这很好。如果您想单独提交和/或提交到不同的目的地,您只想将控件拆分为不同的表单 - 但您不这样做。表单不是视觉元素——它只是将输入控件组合在一起的一种方式。

【讨论】:

    【解决方案2】:

    我想你需要使用 ajax(jQuery 最简单)来做到这一点,这样页面就不会卸载......

    下面是一个帮助您入门的示例:

    http://hayageek.com/jquery-ajax-form-submit/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-29
      • 1970-01-01
      • 1970-01-01
      • 2010-10-07
      • 2016-01-18
      相关资源
      最近更新 更多