获取已在PHP中检查的复选框

时间:2016-04-07 08:45:32

标签: php html forms checkbox mysqli

我想在表单中选中所有选中的复选框,因此如果有一个复选框列表,其中包含值' a',' b',' c&# 39;并且' d'并且只有复选框' a'和' c'检查后,我的查询只会选择' a'和' c'从所需的表格。

在PHP中实现这一目标的最简单方法是什么?

编辑:检索了哪些复选框后,我想在MySQLI查询中使用这些复选框。

因此,例如,如果结果是' c,' d'' e'查询应如下所示:

$query = "SELECT 'c', 'd', 'e' FROM table";

我如何将结果翻译成这个?

我尝试使用类似问题的示例:https://stackoverflow.com/a/4997271/5453484

编辑2:更多代码:

<form name="filter"  style="float:left;" method="post">
            <table>
                <tr>
                    <td>
                        <label>Voornaam:</label>
                    </td>
                    <td>
                        <input type="checkbox" name="check_list[]" value="a"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Achternaam:</label>
                    </td>
                    <td>
                        <input type="checkbox" name="check_list[]" value="b"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Adres</label>
                    </td>
                    <td>
                        <input type="checkbox" name="check_list[]" value="c"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Plaats</label>
                    </td>
                    <td>
                        <input type="checkbox" name="check_list[]" value="d"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Postcode</label>
                    </td>
                    <td>
                        <input type="checkbox" name="check_list[]" value="e"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Zoeken</label>
                    </td>
                    <td>
                        <input type="text" name="Zoeken" value="f"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label style="margin-top:5px;"></label>
                    </td>
                    <td>
                        <input id="submitfilter" type="submit" style="margin-top:5px;" class="btn">Zoeken</input>
                    </td>
                </tr>
            </table>
            <?php
            if(!empty($_POST['check_list'])) {
                foreach($_POST['check_list'] as $check) {
                    echo $check; //echoes the value set in the HTML form for each checked checkbox.
                    //so, if I were to check 1, 3, and 5 it would echo value 1, value 3, value 5.
                    //in your case, it would echo whatever $row['Report ID'] is equivalent to.


                }
            }
            ?>
        </form>

这是我目前使用的形式。

2 个答案:

答案 0 :(得分:0)

尝试将Jquery添加到您的页面。 假设复选框类为.checkboxtd

$(document).on('change','.checkboxtd',function () {

if($(this).is(':checked'))
{
    //do some thing
}
else
{
    //do some thing
} 
});

答案 1 :(得分:0)

我用以下代码修复了它:

<form name="filter"  style="float:left;" method="post">
            <table>
                <tr>
                    <td>
                        <label>Voornaam:</label>
                    </td>
                    <td>
                        <input type="checkbox" name="first_name" id="inh" value="a_Voornaam"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Achternaam:</label>
                    </td>
                    <td>
                        <input type="checkbox" name="last_name" id="inh" value="a_Achternaam"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Adres</label>
                    </td>
                    <td>
                        <input type="checkbox" name="address" id="inh" value="a_Adres"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Plaats</label>
                    </td>
                    <td>
                        <input type="checkbox" name="city" id="inh" value="a_Woonplaats"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Postcode</label>
                    </td>
                    <td>
                        <input type="checkbox" name="zipcode" id="inh" value="a_Postcode"/>
                    </td>
                </tr>
                <tr>
                    <td>
                        <label>Zoeken</label>
                    </td>
                    <td>
                        <input type="text" name="Zoeken" />
                    </td>
                </tr>
                <tr>
                    <td>
                        <label style="margin-top:5px;"></label>
                    </td>
                    <td>
                        <input id="submitfilter" type="submit" style="margin-top:5px;" class="btn"/>
                    </td>
                </tr>
            </table>
            <?php
            if(!empty($_POST)){
                var_dump($_POST);

                foreach ($_POST as $key => $row){
                    if(empty($values)) {
                        $values = $row;
                    } else {
                        $values .= ', ' . $row;
                    }
                }
                $txt = $_POST['Zoeken'];
                echo $values;

                ?><br><?php
                echo $txt;
            }
            ?>
        </form>