Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, eu estou desesperada. Sou iniciante em PHP e estou fazendo a Intranet da minha empresa. Estou com um problemão para validar os usuários. É o seguinte, na página de index.html o usuário vai digitar o Login e a Senha, aí tem a página de validação (autentica.php) que deve verificar o nível de acesso desse usuário cadastrado no banco e mostrar uma página para cada nível (1-Diretor, 2-Gerente, 3-Coordenador, 4-Representante, 5-Funcionários).
Eu fiz um CASE mas quando ele valida não mostra a página que deveria, ele pula direto pra Default que é "Não Encontrada".
É como se o CASE não estivesse funcionando. Eu já tentei vários códigos, várias maneiras mas nenhuma funciona.
Por favor, me ajudem!!!! :unsure:
Tabela no banco
CREATE TABLE tb_usuarios_intranet (
ID_USUARIO int(3) NOT NULL auto_increment,
NOME_USUARIO varchar(50) NOT NULL default '',
USUARIO varchar(30) NOT NULL default '',
SENHA varchar(15) NOT NULL default '',
LEVEL varchar(15) NOT NULL default '',
PRIMARY KEY (ID_USUARIO)
) TYPE=MyISAM;
Autentica.php
<?phpob_start();//CONECTA COM O BANCO DE DADOS$con = mysql_connect("","","");mysql_select_db("bago");//RECEBE OS DADOS DO FORMULÁRIO$usuario = $_POST[txtUser];$senha = $_POST[pwSenha];//VERIFICA$sql = mysql_query("SELECT * FROM tb_usuarios_intranet WHERE USUARIO = '$usuario' AND SENHA = '$senha'") or die("ERRO NO COMANDO SQL");//LINHAS AFETADAS PELA CONSULTA$row = mysql_num_rows($sql);//VERIFICA SE RETORNOU ALGOif($row == 0) echo "Usuário/Senha inválidos";else {//PEGA OS DADOS$id = mysql_result($sql, 0, "ID_USUARIO");$usuario = mysql_result($sql, 0, "USUARIO");$nome = mysql_result($sql, 0, "NOME_USUARIO");$level_usuario = mysql_result($sql, 0, "LEVEL");//INICIALIZA A SESSÃOsession_start();//GRAVA AS VARIÁVEIS NA SESSÃO$_SESSION[id] = $id;$_SESSION[usuario] = $usuario;$_SESSION[nome] = $nome;$_SESSION[level_usuario] = $level_usuario;//REDIRECIONA PARA A PÁGINA QUE VAI EXIBIR OS PRODUTOSswitch($_GET['LEVEL']){case "01": echo"<script language='JavaScript'>window.location.replace(\"restrito.php\");</script>";break;case "02": include "restrita2.php";break;case "03": include "restrita3.php";break;case "04": include "restrita4.php";break;case "05": include "restrita5.php";break;default: echo "Não encontrada."; echo "o nivel de acesso é: $level_usuario";break;}}mysql_close($con);?>
Restrito.php (para teste)
<?phpob_start();//INICIANDO SESSIONsession_start();$con = mysql_connect("",",""); //sua conexãomysql_select_db("bago");echo "$level_usuario";$level = $level_usuario;//relacao de levels que podem acessar a pagina$lv = array('01','02','03','04','05');//SE NÃO TIVER VARIÁVEIS REGISTRADAS//RETORNA PARA A TELA DE LOGINif( (!isset($_SESSION[id])) AND (!isset($_SESSION[nome])) ){Header("Location: index.html");};//level permitidoif ($level_usuario == $lv[01] || $level_usuario == $lv[02] || $level_usuario == $lv[03] || $level_usuario == $lv[04] || $level_usuario == $lv[05]){echo "<center>";echo "Página secreta";echo "<br>";echo "<br><br><a href='restrita2.php'>Restrita2</a>";echo "<br><br><a href='restrita3.php'>Restrita3</a>"; echo "<br><br><a href='logout.php'>Logout</a>";echo "</center>"; }else {//DESTRÓI AS VARIÁVEISunset($_SESSION[id]);unset($_SESSION[usuario]);unset($_SESSION[nome]);unset($_SESSION[level_usuario]);session_destroy(); //REDIRECIONA PARA A TELA DE LOGINHeader("Location: index.html"); };mysql_close($con);?>Esse restrito.php é apenas uma página de teste que eu utilizei, mas o conteúdo vai ser aplicado depois que esse troço resolver funcionar.Por favor gente, alguém me ajuda porque eu nem sei mais o que fazer.
----Michelle-----
Carregando comentários...