使用复选框发送多个值

时间:2014-02-16 17:22:45

标签: php checkbox

我有一个表单,此表单包含此表:

<?php foreach($resultTable as $key => $value)
    {
    ?>
        <table>
           <tr>
              <td><input type = "checkbox" name="idPriv[]" id="idPriv"  onclick="evaluateIT(this)" data-related-item="adminPanelShow" value ="<?php echo $value["id"]?>" />
                  <input name="rowID[]" id="rowID[]" class="adminPanel" hidden="hidden" type="text" value="<?php echo $value["id"]?>"/></td>
              <td><input type="text" name="userName[]" id="userName" class="adminPanel" value="<?php echo $value["userName"]?>"/></td>
              <td><input  name="firstName[]" type="text" id="firstName" class="adminPanel" value="<?php echo $value["firstName"]?>"/></td>
           </tr>
<?php } ?>

        </table>

当我选择想要的复选框并提交表单时,我想使用我选中的复选框。这意味着,idPriv[]数组仅返回按下的复选框,其他数组(userName[], firstName[])会发送所有行的所有数据。 /强>

如何仅从这些数组中提取数据(并忽略未检查的行)?

2 个答案:

答案 0 :(得分:0)

要检查复选框是否已选中,请按原样解析:

foreach($resultTable as $key => $value)
{
    if($value==="on")
    {
        // checked checkbox has a value of "on"
        // triple = sign means value is exactly "on"
    }
}

答案 1 :(得分:0)

使用复选框值连接每个userNamefirstName字段:

foreach($resultTable as $key => $value)
{?>
    <table>
       <tr>
          <td><input type = "checkbox" name="idPriv[]" id="idPriv"  onclick="evaluateIT(this)" data-related-item="adminPanelShow" value ="<?php echo $value["id"]?>" />
              <input name="rowID[]" id="rowID[]" class="adminPanel" hidden="hidden" type="text" value="<?php echo $value["id"]?>"/></td>
          <td><input type="text" name="userName[<?php echo $value["id"]?>]" id="userName" class="adminPanel" value="<?php echo $value["userName"]?>"/></td>
                                                 ^--- here
          <td><input  name="firstName[<?php echo $value["id"]?>]" type="text" id="firstName" class="adminPanel" value="<?php echo $value["firstName"]?>"/></td>
                                       ^--- here
       </tr>
}
</table>

在您的脚本中,您可以执行以下操作:

foreach ($_POST[`idPriv`] as $id) {
    $firstName = $_POST['firstName'][$id];
    $userName = $_POST['userName'][$id];
    // ...
}