使用DB检查复选框

时间:2016-02-17 09:21:46

标签: php

我有n个复选框。如果其中一个被选中,则用户idcheckbox id将进入数据库。如何保存页面重新加载后单击的复选框。现在我正面临着周期中的问题

for ($i = 0; $i < count($arr[3])); $i++){   // $arr - array containing user id and ckeckbox id    
          $active = "";
       if ($arr[3][$i]['id'] != ""){
          $active = "active" // class for active checkbox       

}
$checkbox .= "<div class="check_ '.$active.'"></div>";
}

例如,如果我有3个复选框并单击1和3,则数组将类似于{1,3,NULL}而不是{1,NULL,3}。我认为ckeckbox id应该等于复选框号

2 个答案:

答案 0 :(得分:0)

像这样解决了

for ($j=0; $j< count($array[3]); $j++){
        $mailing_list_id = $mailing_lists[3][$j]['id'];          
        $m_active = "";
        if(!empty($clicked[3])){ 
            for ($i=0;$i<count($result[3]);$i++){                
                if ($array[3][$j]['id'] == $clicked[3][$i]['id_usr_mailing_lists']){
                    $m_active = "active";
                } 
            }  
    $checkbox .= "<div class="check_ '.$active.'"></div>";


        }

其中$arr包含所有复选框,clicked包含已点击的复选框

答案 1 :(得分:0)

诀窍是制作复选框数组...... html应如下所示:

 <form method='post' id='userform' action='thisform.php'> <tr>
        <td>Trouble Type</td>
        <td>
        <input type='checkbox' name='checkboxvar[]' value='Option One'>1<br>
        <input type='checkbox' name='checkboxvar[]' value='Option Two'>2<br>
        <input type='checkbox' name='checkboxvar[]' value='Option Three'>3
        </td> </tr> </table> <input type='submit' class='buttons'>
    </form>

并阅读html

<?php 

    if (isset($_POST['checkboxvar'])) 
    {
        print_r($_POST['checkboxvar']); 
    }
?>

注意如何根据你的数据库构建这个html ...即如果选中了一个复选框,则必须在html中检查...

&LT;