Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal,
Estou criando um sistema multiusuário e quero definir hierarquias para os usuários, onde o administrador tenha controle total do sistema e os demais usuários não tenham determinadas funções.
Primeiramente adicionei um campo "grupo" na tabela de "login", onde no login do sistema fiz uma verificação em q grupo o usuário logado pertence, dependendo da condição eu jogo ele para uma determinada página. Mas a maneira que eu fiz sei que não é uma prática muito inteligente de se fazer, quero fazer um sistema com uma página única onde tenha uma condição que verifique que grupo o mesmo pertence e sendo assim definir oq o mesmo vai poder acessar ou não, pois a maneira que eu fiz foram páginas diferentes para diferentes tipos de usuários.
Abaixo está o código que estou utilizando..
login.php
<?php include("config.php"); ?>
<?php
session_name("admin");
session_start();
if($_POST['acao'] == "") {
$acao = $_GET['acao'];
} else {
$acao = $_POST['acao'];
}
if($acao == "logar") {
$nome = $_POST['nome'];
$senha = $_POST['senha'];
$q_userA = mysql_query("SELECT * FROM `login` WHERE `usuario`='$nome'");
$q_userB = mysql_query("SELECT * FROM `login` WHERE `usuario`='$nome' AND `senha`='$senha'");
$total = mysql_num_rows($q_userB);
$dados = mysql_fetch_array($q_userA);
if($total == "1") {
if($senha == $dados['senha']) {
if($dados['grupo'] == "admin"){
session_register("nome");
header("Location: principal_adm.php");
exit;
}
if($dados['grupo'] == "A"){
session_register("nome");
header("Location: principal_a.php");
exit;
}
if($dados['grupo'] == "B"){
session_register("nome");
header("Location: principal_b.php");
exit;
}
} else {
header("Location: index.php?login=falhou&causa=".urlencode('Senha Errada'));
exit;
}
} else {
header("Location: index.php?login=falhou&causa=".urlencode('Usuário ou Senha Inválidos'));
exit;
}
}
if($acao == "deslogar") {
session_name("nome");
session_destroy();
}
if(session_is_registered("nome") == false) {
header("Location: index.php");
}
?>
principal_adm.php
<?php require("login.php");?>
Olá Administrador <B><?php echo $_SESSION["nome"]; ?></B>,<BR>
<a href="login.php?acao=deslogar">Sair</a>
Desde já,
grato pela atenção!
Att
Junior
Carregando comentários...