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

Sistema de login com níveis de permissão - MySQL + PHP


PerguntasScript

Pergunta

O sistema de cadastro está funcionando corretamente em todas as páginas;

Tenho 3 níveis de usuários, o problema é que na seguinte páginas, quando estou logado em todos os usuários ele me redireciona sempre para a mesma página que é menuCliente.php;

Algo que não deveria acontecer, visto que em determinados usuários ele deveria me liberar o acesso a página cadastrarCliente.php

O que há de errado com o código?

Página cadastrarCliente.php:

 

<!DOCTYPE html>
<html lang="pt-br">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link href='https://fonts.googleapis.com/css?family=Montserrat' rel='stylesheet' type='text/css'>
        <link rel="stylesheet" href="../styles/estilo.css">
    </head>

    <body>

        <?php
            include "../conexao.php";

            /* A sessão precisa ser iniciada em cada página diferente */
            if (!isset($_SESSION)){
                session_start();
            /* Verifica se não há a variável da sessão que identifica o usuário */
            } if (!isset($_SESSION['login'])){
                /* Destrói a sessão por segurança */
                session_destroy();
                
                /* Redireciona o visitante de volta pro login */
                header("Location: index.php");
                exit;
            }
        ?>

        <?php
            /* A sessão precisa ser iniciada em cada página diferente */
            if(!isset($_SESSION['idUsuario']['nivel'])){

                $nivelNecessario = 1;

                /* Verifica se não há a variável da sessão que identifica o usuário */
                if($_SESSION['idUsuario']['nivel'] = $nivelNecessario){

                    /* $alerta = echo "Você não tem permissão para realizar esta operação!"; */
                    echo "<script language='javascript'>alert($alerta);</script>";

                    /* Redireciona o visitante de volta pro login */
                    header("location:menuCliente.php");
                } else{

                    if($_SESSION['idUsuario']['nivel'] > $nivelNecessario){
                        header("location:cadastrarCliente.php");
                    }
                }
            }
        ?>

        <table>
            <tr>
                <th>
                    Você está logado com:
                    <?php
                        echo $_SESSION['login'];
                    ?>
                     | 
                </th>
                <th>
                    <a href="../logout.php"><p>Logout</p></a>
                </th>
            </tr>
        </table>
    </body>
</html>

Se precisarem do código das outras páginas me avisa, mas como eu falei, o erro está nesta página...

Editado por PerguntasScript
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...