Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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>";
} 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
Vendo assim rapido
<?php
session_start();
if(!isset($_SESSION['usuario'])){
header("Location: index.php");
}
?>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...
>
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
>
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...
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 ;)
Cara você lembrou de iniciar a sessao na pagina verifica.php ?
valeu