Inauserform,Iloadinformationsuchasusername,password,andpermissions.
ButnowIhaveincludedinthetableofpermissoes
afieldcalledgrupo
.
AndIincludeintheformofusuarios
thisfield,sothat;eachtimetheuser'spermissionischosen,thegroupfieldloadsthegroupnameoftheselectedpermission.
IknowthatinMYSQL,thequeryusedis
'SELECT'grupo'FROM'permissoes'WHERE'id'=1'.
ButIcouldnotdothisincodeigniter.
Intheeditfunction,
Iretrievetheuserdataanddisplaytheinformationintheviewasfollows:
UserController
//Obtemdadosdousuário$this->data['usuarios']=$this->Usuarios_model->obter_id($this->uri->segment(4));//ObtemPermissõesAtivas$this->data['permissoes']=$this->Permissoes_model->obter_ativo('permissoes','permissoes.id,permissoes.nome');//CarregaView$this->template->admin_render('admin/usuarios/editar',$this->data);
ModelUser:
//FunçãoobterIDfunctionobter_id($id){$this->db->select('usuarios.*,permissoes.nomeaspermissao');$this->db->select('usuarios.*,permissoes.grupoasgrupo');$this->db->join('permissoes','usuarios.permissoes_id=permissoes.id','left');$this->db->where('usuarios.id',$id);$this->db->limit(1);return$this->db->get('usuarios')->row();}
ModelPermissions
//Exibirsomentepermissõesativasfunctionobter_ativo($tabela,$campos){$this->db->select($campos);$this->db->from($tabela);$this->db->where('situacao',1);$query=$this->db->get();return$query->result();;}
ViewUser
//Viewdoformuláriousuário<selectname="permissoes_id" id="permissoes_id" class="form-control">
<?php foreach ($permissoes as $permissao) {
if($permissao->id == $usuarios->permissoes_id){ $selected = 'selected';}else{$selected = '';}
echo '<option value="'.$permissao->id.'"'.$selected.'>'.$permissao->nome.'</option>';
} ?>
</select>
<label>Grupo</label>
<input "Aqui vai o nome do grupo referente a permissão selecionada" />
User tables
'id' INT(11) NOT NULL AUTO_INCREMENT,
'primeiro_nome' VARCHAR(40) NOT NULL,
'ultimo_nome' VARCHAR(40) NOT NULL,
'nome_usuario' VARCHAR(40) NOT NULL,
'telefone' VARCHAR(20) NULL DEFAULT NULL,
'email' VARCHAR(80) NOT NULL,
'senha' VARCHAR(45) NOT NULL,
'permissoes_id' INT NOT NULL,
'grupo' INT NOT NULL,
Permissions Tables
'id' INT(11) NOT NULL AUTO_INCREMENT,
'nome' VARCHAR(80) NOT NULL,
'descricao' VARCHAR(80) NULL DEFAULT NULL,
'grupo' INT NOT NULL,
'permissoes' TEXT NULL,
'situacao' TINYINT(1) NULL,