如何使用Codeigniter重新填充编辑表单中的复选框

时间:2014-08-17 16:48:38

标签: php codeigniter

到目前为止,我知道如何重新填充表单输入和复选框

看起来像是:

value="<?= set_value('rank') ?>" for input 

 <?= set_checkbox('is_default', '1'); ?> for checkbox

问题是,在编辑表单中如何:

输入值正常:

value="<?= set_value('rank',$customer_group[0]['rank']); ?>"

但我无法重新填充复选框

<?php if ($customer_group[0]['is_default'] == "1") echo "checked"; set_checkbox('is_default', '1'); ?>

即使我没有在edit =&gt;中检查它,该复选框也会检查未能在表格中验证,谢谢你的帮助

更新

更改为:

是否正确
<?php
    if(isset($_POST['is_default']) || $customer_group[0]['is_default'] == "1"){
    echo "checked"; 
    }
    set_checkbox('is_default', '1'); 
 ?>

1 个答案:

答案 0 :(得分:1)

如果验证失败,则只需检查发布数据

<?php
    if(isset($_POST['is_default'])){
    echo "checked"; set_checkbox('is_default', '1');
    }elseif ($customer_group[0]['is_default'] == "1"){
    echo "checked"; set_checkbox('is_default', '1');
    }
 ?>

因此,如果用户检查复选框并且验证失败,则表单将有一个选中的复选框,以保存用户在没有发布数据时所做的选择,然后将由$customer_group <中的数据库数据进行检查/ p>