使用php在数据库中插入复选框的ID

时间:2016-07-08 09:35:48

标签: php html mysql

我有两个输入字段:

<input type='hidden' name='amenId[]' value='$amen[amenId]'>  
<input type="checkbox" name='amentities[]' id='check'>$amen[amenBG]  

这两个输入字段位于foreach标记中,循环遍历数组($ amen)。在提交表单后,我有php文件循环遍历数组并插入已检查输入的id和值。现在问题来自于我的输入字段是复选框。我已经将这个技术用于不同的数组,其中输入类型是文本,我没有问题。在这里我有大约30种选择可供选择,当我检查数据库中的第一个和第五个时,选择的id应该是1和5但不是那个是1和2.我不知道为什么是但我认为它只与从复选框中获取值有关 我的PHP代码:

$checkedAmen = '';  
        foreach ($_POST['amentities'] as $key => $amen) {

            $checkedAmen = $amen;
            $checkedId = $_POST['amenId'][$key];

            if ($checkedAmen == "on") {
                $checkedAmen = "Yes";
            }elseif($checkedAmen == "") $checkedAmen ="No";

            $sqlAmen = "INSERT INTO ObjectAmen(ProductId, AmenId, AmenData) VALUES(?, ?, ?)";
            if ($stmtAmen = $db -> prepare($sqlAmen)) {
                $stmtAmen -> bind_param('iis', $last, $checkedId, $checkedAmen);
            }else{
                echo "Error: " . $db->error;
            }
            $stmtAmen -> execute();
        }

有人能帮助我吗?我希望将正确的ID与数据库中已检查的选项进行对应。

1 个答案:

答案 0 :(得分:0)

目前没有任何东西将你的两个输入捆绑在一起。您可以在复选框上设置值,因此如果选中它,则您具有ID

dbernoulli(y,prob = 0.7)

如果它在foreach中,你也想把id从输入中删除,因为你每次都会重新绑定id。