Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Buthy

Problema com validação de login em php

Recommended Posts

Então galera, esse é o arquivo efetuarlogin.php

<?php
include "conectar.php";

function anti_injection($sql){
	$seg = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$sql); //remove palavras que contenham a sintaxe sql
   	$seg = trim($seg); //limpa espaços vazios
   	$seg = strip_tags($seg); // tira tags html e php
   	$seg = addslashes($seg); //adiciona barras invertidas a uma string
   	return $seg;
   }

$usuario = anti_injection($_POST['usuario']);
$senha	 = anti_injection($_POST['senha']);

//começa a comparar a senha criptografada
$salt ='723hdshdshn7443bsdhjbds65t215ghdsghjdsghjsd';
$senha = sha1($_POST['senha']);
$senha = $salt . $senha;

$sql = "SELECT * FROM usuario WHERE usuario='$usuario' and senha='$senha'";
$rs = mysql_query($sql,$con);
$linha = mysql_fetch_assoc($rs);

$ok = mysql_num_rows($rs);

if($ok==0){
	echo "<script> alert('Erro: usuário e/ou senha incorretos.');</script>";
	echo "<script> window.close();</script>";
}	
else{
	session_start();
	$_SESSION['usuario'] = $usuario;
	header('Location: /admin/index.php');
   }

?>

 

o arquivo admin/index.php é esse: (ainda está em construção)

<?php
include "verificar.php";

echo "Área Administrativa";
?>

 

e o admin/verificar.php é esse:

<?php
if(!isset($_SESSION['usuario'])){
	header("Location: index.php");
}
?>

 

Quando faz o login, dá esse erro no Firefox:

 

Redirecionamento incorreto

O Firefox detectou que o pedido para este endereço não será concluído devido à forma que o servidor o está redirecionando.

Este problema algumas vezes pode ser causado pela desativação ou bloqueio de cookies.

 

O que pode ser isso? :S

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

afff...

Eu tava com problema em session_start(), daí tava mexendo, arrumei, e esqueci de colocar de volta ahahahahah

 

Valeu galera!

 

Outra coisa...

O que eu posso fazer que quando a pessoa tentar acessar diretamente o arquivo admin/index.php exiba uma mensagem de área restrita, por exemplo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Outra coisa...

O que eu posso fazer que quando a pessoa tentar acessar diretamente o arquivo admin/index.php exiba uma mensagem de área restrita, por exemplo...

 

 

Nao sei se eu entendi, mas você quer q caso a pessoa tente acessar o arquivo sem ta logado apareca um msg?

Se for isso basta no if que você verifica se ele esta logado, colocar um ELSE e u ECHO mostrando um msg na tela

 

Falou

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao sei se eu entendi, mas você quer q caso a pessoa tente acessar o arquivo sem ta logado apareca um msg?

Se for isso basta no if que você verifica se ele esta logado, colocar um ELSE e u ECHO mostrando um msg na tela

 

Falou

 

Isso... Quando alguém tentasse acessar diretamente pela URL, por exemplo www.site.com.br/admin/cadastrar.php, exibisse um erro...

 

Se eu coloco o ELSE e uma mensagem no verificar, ele exibe em todas as páginas, mesmo que a pessoa esteja logada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredito que uma das opções seria colocando esse código no topo do código de seu arquivo index.php:

 

<?php
       session_start();
       if(!isset($_SESSION['usuario'])){
               echo "Área Restrita. Faça o login para acessar o conteúdo dessa página!";
               echo "<br>";
               echo "<a href="AQUI VOCÊ COLOCA O LINK DA PÁGINA DE LOGIN">IR PARA A PÁGINA DE LOGIN!</a>";
       }
?>

 

Acho que isso resolve ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.