在php中为每个用户提供2个收音机的表单

在php中为每个用户提供2个收音机的表单,php,html,mysql,forms,foreach,Php,Html,Mysql,Forms,Foreach,我有一个表单,可以根据唯一的名称标记动态打印出名称。 用于响应邀请。每个姓名标签可以有多个用户,即夫妇、有孩子的夫妇等。 每个名字都有一个单选按钮,被邀请者可以选择他/她是否来参加聚会(值为1=不来,2=来)。对于一对夫妇来说,它可以是这样的: Lady Mary S I am not coming - radio - value 1 I am coming - radio - value 2 Mister Hans S I am not coming

我有一个表单,可以根据唯一的名称标记动态打印出名称。 用于响应邀请。每个姓名标签可以有多个用户,即夫妇、有孩子的夫妇等。 每个名字都有一个单选按钮,被邀请者可以选择他/她是否来参加聚会(值为1=不来,2=来)。对于一对夫妇来说,它可以是这样的:

Lady Mary S
I am not coming         - radio - value 1
I am coming             - radio - value 2

Mister Hans S
I am not coming         - radio - value 1
I am coming             - radio - value 2

Child of Mary & Hans S
I am not coming         - radio - value 1
I am coming             - radio - value 2
这些被邀请者中的每一个都有一个用户id——我需要带有用户id的响应。 它的HTML如下所示:

<div>
<h1>Lady Mary S</h1>
<label for="no-1">I am not coming</label>
<input type="radio" value="1" id="no-1" name="response[1]" /><br />
<label for="yes-1">I am coming</label> 
<input type="radio" value="2" id="yes-1" name="response[1]" />
<input type="hidden" name="userid[]" value="1" />
</div>

<div>
<h1>Mister Hans S</h1>
<label for="no-2">I am not coming</label>
<input type="radio" value="1" id="no-2" name="response[2]" /><br />
<label for="yes-2">I am coming</label> 
<input type="radio" value="2" id="yes-2" name="response[2]" />
<input type="hidden" name="userid[]" value="2" />
</div>

<div>
<h1>Child of Mary & Hans S</h1>

<label for="no-3">I am not coming</label>
<input type="radio" value="1" id="no-3" name="response[3]" /><br />
<label for="yes-3">I am coming</label> 
<input type="radio" value="2" id="yes-3" name="response[3]" />
<input type="hidden" name="userid[]" value="3" />
</div>

玛丽女士
我不来了

我来了 汉斯先生 我不来了
我来了 玛丽和汉斯的孩子 我不来了
我来了
这些名字将从MySQL中提取,并为这3个人添加一个唯一的名字标签,f.x.
MARHAN

这是一个动态表单-对于某些名称标签,只有两个被邀请者,而对于其他名称标签,将有3个或4个,以此类推

我的问题是,我无法想出一个解决方案来处理发布的数据,这样我就可以确保响应是针对正确的用户id的。

您只需要

foreach($_POST['response'] as $userid => $value) {
      echo $userid.'-'.$value."<br>";
}
foreach($\u POST['response']作为$userid=>$value){
echo$userid.'-'.$value.“
”; }

因为您已经在单选按钮名称的键name=“response[1]”

中有了
userid,所以有一个想法:让每个输入的值类似于“answer userid”怎么样。e、 g:

<input type="radio" value="1-333" id="no-3" name="response[]" /><br />


然后,您可以将php中发布的值除以“-”,并得到答案(1)和用户id(333)。

最好使用
name=“response[userid value][]”
Arh。。很抱歉我已经有了!非常非常简单!这一定是我看不见它的原因吧!:)多谢各位!