我的视图中有一个复选框列表,我从数据库中加载了值。
<input type="checkbox" id="CheckBoxAdmin" name="CheckBoxAdmin" <?php echo $Admin; ?> />Admin
<input type="checkbox" id="CheckBoxCreateUser" name="CheckBoxCreateUser" <?php echo $CreateUser; ?> />Create User
我通过我的控制器传递价值。
$this->load->view('edituserview', $data);
$ data包含一组用户权限。
for($i=0;$i<$max;$i++)
{
if( $pieces[$i]=="Admin" )
{
$data['Admin']="checked";
}
else
{
$data['Admin']="";
}
if( $pieces[$i]== "Create User")
{
$data["CreateUser"]="checked";
}
else
{
$data["CreateUser"]="";
}
}
$this->load->view('edituserview', $data);
但问题是,当我回显$ Admin或$ CreateUser时,我看不到复选框的正确状态(是否已选中)。我想传递控制器中的值,以便查看。
任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
<?php
$Admin="";
$CreateUser="";
$prv= element('privileges', $users);
$pieces = explode(",", $prv);
$data['priviledges']= str_replace(array('[',']'),'',$pieces);
$pieces= str_replace(array('[',']'),'',$pieces);
$max = sizeof($pieces);
if (in_array('Admin', $pieces, true))
{
$Admin="checked";
}
if(in_array("Create User", $pieces, true))
{
$CreateUser="checked";
}
?>
在我的控制器文件中,我只是传递$ data数组而不是编写逻辑。
$data['users'] = $this->Usermodel->RetrieveUsers( $userid);
$this->load->view('edituserview', $data);
现在我可以正确获得正确的状态。
答案 1 :(得分:0)
<?php
$data['Admin'] = false;
$data['CreateUser'] = false;
for($i=0;$i<$max;$i++) {
if($pieces[$i] == "Admin") {
$data['Admin'] = true;
}
if($pieces[$i] == "Create User") {
$data['CreateUser'] = true;
}
}
$this->load->view('edituserview', $data);
?>
试试这个