Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cesão

Lógica - Permissões

Recommended Posts

Olá amigos,

 

Estou com um problema de pensar em uma lógica boa para meu caso. Tenho uma tabela no banco de dados que é a TBL_PERMISSOES, onde relaciono o cliente à ferramenta que ele tem permissão de usar. Abaixo seria o modelo da tabela e um exemplo de relacionamento

 

TBL_PERMISSOES

ID_FERRAMENTA

ID_CLIENTE

 

TBL_PERMISSOES

2

5

 

Quando o cliente faz login, eu guardo o ID dele numa session. dai eu queria que a partir desse ID, no include de conexao mesmo (que está em todas as paginas), eu ja listasse quais as permissoes dele de algum jeito que eu pudesse fazer IFs nas sessões e saber se ele pode visualizar aquilo ou nao. O problema é que nao sei fazer isso sem dar um select p cada ferramenta, ou pelo menos nao pensei numa lógica melhor. alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Batata esse ! rsrsrs vou te passar mastigado, pq eu sofri pra imaginar a query que faria isso !

 

TB_USUARIO

id_usuario

Nome

 

TB_MODULO

id_modulo

nome_modulo

 

 

TB_ACESSOxUSUARIO

id_usuario

id_modulo

 

 

Parada é a seguinte:

Você precisa gravar na TB_ACESSOxUSUARIO o id_usuario e os "id_modulo" referente a cada modulo que eu possa acessar, no seu caso ferramenta.

 

tenho esse relacionamento a query é:

"SELECT * FROM (SELECT id_modulo, Modulo FROM TB_MODULO) a LEFT JOIN (SELECT id_modulo AS marcado FROM TB_ACESSOxUSUARIO WHERE id_user = '" & Session("intID") & "') b ON a.id_modulo = b.marcado"

 

Beleza ?!

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

E aí Angelo.

Parece que eh isso mesmo que preciso. mas depois de eu adaptar essa string pras minhas tabelas, como faço p usá-la num caso especifico?

 

tipo, tenho uma janela onde mostro banners de 3 ferramentas, como anuncios das ferramentas, mas gostaria que o usuario visse apenas os banners das ferramentas que ele tem acesso. como vou fazer o if para cada banner? (os banners nao sao colocados dinamicamente, mas manualmente).

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode fazer o mesmo esquema para login em nivel, ou seja, dependendo do login ele tem direito a, por exemplo, (inserir,alterar,excluir,consulta) ou (consulta e inserir), apenas (consultar), procure no forum que existe um exemplo assim, dae é só implementar

Compartilhar este post


Link para o post
Compartilhar em outros sites

xan, este tipo de esquema eu já fiz, mas não é disso que preciso... como eu disse antes, cada cliente vai ter suas ferramentas especificas. não é questao de alterar, excluir nem nada disso. é questão de escolher as ferramentas que criei, como dito no primeiro post.

 

Se alguém puder me ajudar com o esquema que o Angelo passou acima, agradeço. Acho que o esquema dele vai dar certo, mas só não sei como implementar as condições para encobrir minhas ferramentas. Digo assim... fiz o select do jeito que o Angelo disse, mas como deve ser meu if?

 

Por exemplo:

 

<%If%>
<div>Ferramenta 1</div>
<%End IF%>

Como deve ser o if acima?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.