使用php在一个页面上以相同名称的不同表单为目标输入

使用php在一个页面上以相同名称的不同表单为目标输入,php,forms,input,Php,Forms,Input,基本上,我在一个页面上有多个表单(所有表单都采用不同的数据),但我希望使用相同的php来使用这种类型的方法收集表单输入的值: if(isset($_POST['title']) && !empty($_POST['title'])){ $title = $_POST['title']; $email = $_POST['email']; } 是否可以让多个表单使用同一个php“if”语句,其中输入值仅从所提交的表单分配给变量?您可以使用JavaScript或带

基本上,我在一个页面上有多个表单(所有表单都采用不同的数据),但我希望使用相同的php来使用这种类型的方法收集表单输入的值:

if(isset($_POST['title']) && !empty($_POST['title'])){
    $title = $_POST['title'];
    $email = $_POST['email']; 
}

是否可以让多个表单使用同一个php“if”语句,其中输入值仅从所提交的表单分配给变量?

您可以使用JavaScript或带有隐藏输入字段的jQuery来保持所有表单中的数据同步并能够一起提交

示例代码 HTML

<form id="form1">
    <input type="text" name="field1" />
    <input type="hidden" name="field2" />
</form>
<form id="form2">
    <input type="text" name="field2" />
    <input type="hidden" name="field1" />
</form>

这应该是正确的。

您真的有不同的表单,还是只有一个表单有多个输入

在这两种变体中,这都是可能的。您的代码只读取通过POST发送的内容

我认为你的问题可以通过将所有这些输入合并成一种形式来解决


问题实际上是一次发送所有数据(当点击php时)。由于“提交”按钮提交整个表单,因此可以避免这种情况。

仅提交表单。一次只能提交一个表单。如果这是您想要的,并且您只想使用相同的PHP代码来处理提交的任何一个,那么只需将相同的
name
属性分配给需要进行相同处理的字段。
$('[id^="form"] input[type="text"]').on('change', function(e) {
    var fieldName = $(this).attr('name');
    var newValue = $(this).val();
    $('[name="' + fieldName + '"][type="hidden"]').val(newValue);
});