Terá um painel em que o administrador poderá ver os privilégios de cada usuário, só que tipo, ele repete o nome da área que ele tem o privilegio, tipo:
O usuario 1 tem as 3 permissões na area de noticias que são adicionar, editar e excluir e na area categoria ele pode adicionar.
O Usuario 2 tem apenas a permissão para adicionar na area de noticia e categorias.
O Usuario 3 tem permissao pra adicionar, editar e excluir na area de categorias e adicionar na area de noticias, dai meu select está retornando da seguinte maneira
ID_USUARIO | MODULO | PERMISSAO
1 - Noticias - Adicionar
1 - Noticias - Editar
1 - Noticias - Excluir
1 - Categorias - Adicionar
2 - Noticias - Adicionar
2 - Categorias - Adicionar
3 - Categorias - Adicionar
3 - Categorias - Editar
3 - Categorias - Excluir
3 - Noticias - Adicionar
Eu gostaria que retornasse
1 - Noticias - Adicionar, Editar, Excluir
Categorias - Adicionar
2 - Noticias - Adicionar
Categorias - Adicionar
3 - Noticias - Adicionar
Categorias - Adicionar, Editar, Excluir
Claro, cada modulo tem seu proprio id, assim como suas permissões, vou colocar abaixo como está a instrução
$queryTestx = $db -> consulta('SELECT * FROM admin_modulos as A INNER JOIN admin_nivel_permissao as B INNER JOIN admin_permissao as C
ON(B.id_nivel_permissao = C.id_nivel_permissao) AND (A.id_modulo = C.id_modulo)');
foreach ($queryTestx as $valor) {
echo $valor['id_usuario'];
echo $valor['modulo'];
echo $valor['permissao'].'<br/>';
}
Dai tipo, eu coloquei um DISTINCT para ele não repetir o nome das categorias, só que ele não retorna as permissões que o usuário tem naquela categoria, isso foi com a seguinte instrução:
$queryTestx = $db -> consulta('SELECT distinct A.modulo FROM admin_modulos as A INNER JOIN admin_nivel_permissao as B INNER JOIN admin_permissao as C
ON(B.id_nivel_permissao = C.id_nivel_permissao) AND (A.id_modulo = C.id_modulo)');
Essa acima só retorna:
Notícias
Categorias
Obviamente..
Então, alguém tem alguma sugestão para mim?