Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite a todos, gostaria de saber se alguem tem alguma idéia em fazer um sistema de login com mais de 50 niveis individuais.
hoje estou fazendo assim
na tabela do mysql mais precisamente de usuarios está nivel1, nivel2, nivel3, nivel4, nivel5, nivel6, nivel7, nivel8, nivel9 e assim sucessivamente até 50 o campo esta tyint boleano 0 e 1 onde zero nao tem privilégio e 1 tem privilégio.
no momento do login carrego os privilegio cada um em uma sesão.
existe alguma maneira mais inteligente em php... de fazer isso?
ja pesquisei na net e não achei nada avancado...
valeu
kurol3
cria uma tabela pra perfil, e depois passa o id do perfil pra tabela de usuario...
mas imagina que eu preciso do lvl 1 e 50 somente e tu precise do 33 e 50 e nao do 1
??
Kurol3
>
tblUser
id | nome | lvl
---------------
1 | eu | 1
2 | tu | 33
3 | ele | 50
agora preciso ter ate o lvl 500... ok
tblUser
id | nome | lvl
---------------
1 | eu | 201
2 | tu | 398
3 | ele | 500
cheguei a pensar nisso
tipo id_usuario, nivel, descricao...
se fizer assim é mais interessante em cada pagina consultar o privilegio dele no banco ... ou no login fazer um for e jugar tudo em sessão?
vlw pela ajuda..
Kurol3
>
cria uma tabela pra perfil, e depois passa o id do perfil pra tabela de usuario...
joga na sessão.
50 nivel d acesso =X to tentando intende onde você vai arruma tanta restrição kk
a ideia e essa q o Zero te passo..
o esquema do session e bem simples msm..
o exemplo de como eu faço..
if ($autenticar->autenticacao()) {// seu metodo de autenticação
$logado = Auth::getInstance();
$logado->write($autenticar);
foreach ($autenticar->result as $dados) {
$autenticar->setNivel($dados['nivel']); // peguei o nivel do banco de dados
}
$_SESSION['Admin_nivel'] = $autenticar->getNivel();// joguei o nivel do usuario no session
// na pagina de restrição
$authCheck = Auth::getInstance();
if(!$authCheck->logged() && $_SESSION['Admin_nivel'] != 1){
//pronto aki msm c o usuario nivel 0 tive logado ele num passa! Prq verifico o session lvl 1
header("Location: index.php");
exit;
}
bom no seu caso vai c mais fodinha por se trata de 50 niveis =X ...
>
50 nivel d acesso =X to tentando intende onde você vai arruma tanta restrição kk
tb me veio isso na cabeça... adm, gerente, SUPER adm, user comum, user gripado, user bebado, user fumante...
mas pela qtdade nao parece ser esse tipo de lvl, deve ser algo 'jogavel', tipo rpg - sei la
tblUser
id | nome | lvl
---------------
1 | eu | 1
2 | tu | 33
3 | ele | 50
agora preciso ter ate o lvl 500... ok
tblUser
id | nome | lvl
---------------
1 | eu | 201
2 | tu | 398
3 | ele | 500