正在保存数据库中复选框中的值


Saving values from checkboxes in my db

我正在尝试将复选框中的值存储在数据库中。到目前为止,我只能存储最后一个复选框选项。后来,我试着以某人为榜样,但我很困惑。我如何确保我的所有数据都存储在数据库中?

在我的表中,我想要包含信息的列被命名为"类别"。至于其余部分,它低于(仅限其中2个)

<tr>
    <td><input type="hidden" name="categories" value="categories">Categories</td>       
        <td>
            <div class="checkbox";>
                <label class="checkbox_label">
                    <input name="cats" value="Accessoires" type="checkbox" class="checkbox1"/>
                    Accessoires
                </label>
            </div>
            <div class="checkbox";>
                <label class="checkbox_label">
                    <input name="cats" value="Mobilier de bureau " type="checkbox" class="checkbox1"/>
                    Mobilier de bureau 
                </label>
            </div>
    </td>
</tr>

这是我尝试过的代码如下:

$box=$_POST['box'];
$ledlamps = $_POST['ledlamps'];
$str = $ledlamps . ": " . implode(", ", $box);

所以我最终得到了这个:

$cats = $_POST['cats'];
$categories=$_POST['categories'];
$str = $categories . ": " . implode(", ", $cats);

我没有足够的权限在之前的回答尝试中添加注释,但@Erman Belegu说的是对的,cats[]应该做到。这是代码。

HTML

<tr>
    <td><input type="hidden" name="categories" value="categories">Categories</td>       
        <td>
            <div class="checkbox";>
                <label class="checkbox_label">
                    <input name="cats[]" value="Accessoires" type="checkbox" 
                      class="checkbox1"/>
                    Accessoires
                </label>
            </div>
            <div class="checkbox";>
                <label class="checkbox_label">
                    <input name="cats[]" value="Mobilier de bureau " 
                        type="checkbox" class="checkbox1"/>
                    Mobilier de bureau 
                </label>
            </div>
    </td>
</tr>
<input type="submit" name="submit" value="submit"/>

我唯一添加的是提交按钮,所以我只能在点击提交时在php中做一些事情,这里是相同的php代码。

<?php
$cats = array();
    if(isset($_POST['submit']))
    {
        if(isset($_POST['cats']))
        {
            $cats = $_POST['cats'];
        }
        $categories= $_POST['categories'];
        $str = $categories . ": " . implode(", ", $cats);
        echo $str;
    }
?>

如果你选择了一些东西并点击回声,你会看到类别:以及你选择的任何东西。

希望这能有所帮助,或者也许我一开始就不明白你的问题是什么。

谢谢。

输入的名称应为name="cats[]"。在这些表单中,您将获得所检查的值的数组。