CodeIgniter-从SQL查询设置复选框/单选值

CodeIgniter-从SQL查询设置复选框/单选值,codeigniter,Codeigniter,我正在尝试创建一个编辑页面,它首先将数据库中的所有原始值带入,然后让form_验证库接管。除了复选框和单选按钮外,我已设法使一切按预期运行 这是我的表单的一个示例,非常通用 <input type="checkbox" name="protocols[]" value="online" <?php echo set_checkbox('protocols[]', 'online');?> /> <input type="checkbox" name

我正在尝试创建一个编辑页面,它首先将数据库中的所有原始值带入,然后让form_验证库接管。除了复选框和单选按钮外,我已设法使一切按预期运行

这是我的表单的一个示例,非常通用

    <input type="checkbox" name="protocols[]" value="online" <?php echo set_checkbox('protocols[]', 'online');?> /> 
    <input type="checkbox" name="protocols[]" value="network" <?php echo set_checkbox('protocols[]', 'network');?> />
    <input type="checkbox" name="protocols[]" value="splitscreen" <?php echo set_checkbox('protocols[]', 'splitscreen');?> />
/>

在调用
设置复选框()
时,从字段名中删除括号:

然后检查每个复选框的值是否在该数组中:

<?php echo set_checkbox(
    'protocols',
    'splitscreen',
    in_array('splitscreen', $values) // TRUE checks the box, FALSE does not
);?>

为了方便起见,如果没有其他原因的话,我会在一个循环中这样做。同样值得一看的是
form\u checkbox()
,这将使这一过程变得更加简单


有关详细信息,请参阅用户指南:

我不知道这是否可行,但作为第三个周界的in_array()的工作原理与我所希望的完全相同。非常感谢。
// Something like this
$values = explode(',', $my_data); // Now it's an array
<?php echo set_checkbox(
    'protocols',
    'splitscreen',
    in_array('splitscreen', $values) // TRUE checks the box, FALSE does not
);?>