Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Valor da variável no MySQL


Alan H.

Pergunta

Olá pessoal, primeiramente gostaria de me apresentar pois este é meu primeiro tópico.

Meu nome é Alan Hoffmeister e moro no Rio Grande do Sul, minha experiência com php/mysql é de nível iniciante e, atualmente estou desenvolvendo um sistema para o escritório onde eu trabalho. O sistema é simples e serve como uma intranet, estou no começo do projeto, especificamente trabalhando na parte dos módulos (Inserir Fatura, Relatórios, etc.).

Como o sistema é multi usuário, me vi obrigado a implementar uma camada de segurança extra: bloqueio de módulos por níveis.

O meu problema é relativamente simples, mas não achei nenhum tutorial na internet (deveras por falta de tempo). Eis a variável:

$MM_authorizedUsers = "1,2,3,4,5";
O que eu quero é que esta variável busque os níveis (1,2,3,4,5) no banco de dados, para que depois fique mais simples de criar uma interface administrativa para alterar esses valores, minha tabela tem o seguinte formato:
Tabela:modulos
Colunas:
id
nome
ativo
usuarios

Como ficaria o código para que a variável importasse os usuários (1,2,3,4,5) do banco de dados, para o respectivo módulo?

E para finalizar uma pergunta extra: como posso inserir esses usuários desta forma 1,2,3,4,5 na coluna?

Obrigado!

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

1 Incluir na tabela modulos uma coluna NIVEL que vai identificar qual nivel de usuário pode trabalhar com o modulo

2 Você deve incluir na sua fonte de dados uma tabela para guardar os níveis, assim na hora de fazer a area administrativa você vai dar um select nela para aparecer as opcoes de niveis.

3 Na tabela de usuários do seu sistema deve haver uma coluna relativa ao nivel do usuário.

if(login($_POST['usuario'],$_POST['senha'])) === TRUE){ //TODO criar função de login verificando os parametros com os dados do db e retornando valor boleano
@session_start();
$_SESSION['user'] = $_POST['usuario']; 
}
4 A partir dai identificar seu modulo de alguma maneira, seja por parametro de url, nome do arquivo, através de outro select ou mesmo manualmente para preencher sua varriável basta você dar um select na tabela de niveis
$modulo = 'meu_modulo';
$modulos = mysql_query("SELECT nivel FROM modulo WHERE modulo = '$modulo'");
$campos_modulos = mysql_fetch_assoc($modulos);
$MM_authorizedUsers = $campos_modulos['nivel'];

$usuarios = mysql_query("SELECT nivel FROM usuario WHERE modulo = '".$_SESSION['user']."'"");
$campos_usuarios = mysql_fetch_assoc($usuarios);
$nivel_usuario = $campos_usuarios['nivel'];

if($nivel_usuario < $MM_authorizedUsers)
die('~Seu nível não é suficiente para exibir este modulo');

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...