PHP取消设置多个数组,除了我想要的

时间:2018-10-11 04:43:47

标签: php codeigniter codeigniter-3

出于安全原因,我想取消设置所有我不想在下拉菜单中显示的项目。

这是我的控制器中的代码...

$options['']    = '--Please Select--';
$query = $this->departments->get('department_name');
foreach ($query->result() as $row) {
    $options[$row->id] = $row->department_name;
}

return $options;

这是我的观点

echo form_dropdown('department_id', $options, '','');

我不希望该管理员更改他/她的部门。只有超级管理员才能更改。因此,除了他/她所在的部门,我需要取消所有选项。

例如,当前管理员department_id = 5。然后如何取消设置所有其他选项(1,2,3,4,6,7)

预先感谢

2 个答案:

答案 0 :(得分:0)

您只需在控制器中编写代码以删除该记录即可。

->检查当前用户角色是否为超级管理员。

->如果角色是超级管理员,则可以找到当前的管理部门。

->并编写查询以从数据库中查找不等于admin_department_id的数据。

->并删除所有数据并返回新数据。

答案 1 :(得分:0)

您可以在创建选项变量时添加禁用的属性。

为此,您必须检查用户类型,并以此为基础创建选项列表,并且当用户类型不是超级管理员时,可以在department_id id 5时添加选定和禁用的属性。

为此,我与您分享了一个例子。

process_date

希望它能对您有所帮助。