Webapp で単純な許可システムを実行するのに問題があります。私のDBには、システムのユーザーに関する情報を含む「usuario」というテーブルがあります。これらの列の 1 つは "privilegio" と呼ばれ、管理者の値が '0' で、通常のユーザーの値が 1 です。管理者は、システム上でユーザーを追加および編集する権限を持っています。ログに記録されたユーザーのcodを使用してデータベースにクエリを実行し、その許可を取得して、この動作を実行しようとしています。ユーザーが管理者グループ (privilegio=1) に属していない場合、追加/編集/削除ボタンは設定解除されます。
public function usuario() {
if($this->session->userdata('logged')){
$crud = new grocery_CRUD();
$crud->set_subject("Usuário");
$crud->set_theme('datatables');
$crud->set_table("usuario");
(...)
$crud->field_type('privilegio','dropdown',array('0'=>'Administrador','1'=>'Usuario'));
(...)
$this->db->select('privilegio');
$this->db->get('usuario');
$result = $this->db->where('cod_func',$this->session->userdata('cod_func'));
if(!$result){
$crud->unset_add();
$crud->unset_edit();
$crud->unset_delete();
}
(...)
問題 (および質問) は、このコードがログオンしているユーザーのみをリストし、システムに既に登録され、「usuario」テーブルに保存されている他のユーザーはリストしないことです。リストが私のクエリによって作成されたものなのだろうか (私が望んでいない動作は何ですか) 私の疑問を理解していただければ幸いです。私の悪い英語でごめんなさい。
ありがとうございました!