Ir para conteúdo

Arquivado

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

ro.fonseca

[Resolvido] interação de PHP e MYSQL

Recommended Posts

BOAS!!!

Estou fazendo um codigo em PHP, que ao receber os dados do formulário(login e senha), permite o acesso do usuario a uma parte restrita do site(o codigo ainda tá incompleta faltando ainda a parte da SESSION), mas enfim, eu já me cadastrei(por teste) no Banco de Dados, mas quando tento acessar com o meu login e senha CORRETOS, aparece: "Login ou Senha incorreto", enfim, ele caí no else lá de baixo do meu codigo, gostaria que alguem me desse alguma dica, ou verificasse se há algum erro, ou se está faltando alguma coisa no meu codigo, pq eu não estou conseguindo verificar nenhum erro.

 

<?php
//recebendo dados do formulário(gerenciador.php)
$login = trim($_POST['login']);
$senha = trim($_POST['senha']);

//conectando ao Banco de Dados
require("conecta_bd.php");

$comando = "SELECT login,senha,status FROM tb_administradores WHERE login='$login'";
$consulta = mysql_query($comando);

if($consulta){
$dado = mysql_fetch_array($consulta);

if($dado['login'] == $login && $dado['senha'] == $senha){

	if($dado['status'] == 'benf')
	header("Location: beneficio/setorBeneficio.php");

	if($dado['status'] == 'aten')
	header("Location: atendimento/setorAtendimento.php");

	if($dado['status'] == 'ti')
	header("Location: ti/setorTi.php");

}

else
echo "Login ou Senha incorreto";
}
else
echo "Não foi possivel fazer a consulta ao Banco de Dados<br />".mysql_error();

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

A senha está gravada no banco normal ou tá criptografada (usando MD5, base64, sha1 ou qualquer outro)? imprima as variáveis $login e $dado['login'] e $senha e $dado['senha']. Veja se existe alguma diferença.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

A senha está gravada no banco normal ou tá criptografada (usando MD5, base64, sha1 ou qualquer outro)? imprima as variáveis $login e $dado['login'] e $senha e $dado['senha']. Veja se existe alguma diferença.

 

Carlos Eduardo

 

Não está criptografada. E outra duvida, é necessário usar função mysql_close?? E eu estou usando o Easyphp.

 

Brigado amigo!!, já dei uma olhada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está criptografada

Não grave sem criptografia. Veja neste tópico algumas formas.http://forum.imasters.com.br/index.php?/topic/354968-protecao-de-senhas/

 

imprima as variáveis $login e $dado['login'] e $senha e $dado['senha'].

Fez isto? Estão iguais? Porque a única forma de entrar no else é se uma ou as 2 forem diferentes.

 

E outra duvida, é necessário usar função mysql_close??

É bom usar.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não grave sem criptografia. Veja neste tópico algumas formas.http://forum.imasters.com.br/index.php?/topic/354968-protecao-de-senhas/

 

Ok, vou dar uma lida posteriormente, é pq o site é interno do orgão, daee essa não é a minha preocupação prioritária.

 

imprima as variáveis $login e $dado['login'] e $senha e $dado['senha'].

Imprimi aqui a senha e o login em duas ocasiões, imprimi nessa parte do codigo(como pode perceber logo no inicio do codigo) assim:

$login = trim($_POST['login']);

$senha = trim($_POST['senha']);

 

echo "$senha e $login<br />";

 

e depois(já no final do codigo no primeiro else) assim:

 

else{

echo "Login ou Senha incorreto<br />";

echo "$login e $senha";

}

 

e Imprimiu isso:

 

benfinss e mick

Login ou Senha incorreto

e mick

 

Pode perceber que no primeiro echo saiu o login e a senha corretamente, já no segundo echo só saiu o login.

 

 

 

É bom usar.

 

Carlos Eduardo

 

No caso eu colocaria o mysql_close e dentro do paratenses eu colocaria o que??? Pq a varia que abre a conexão está em outra pagina.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não grave sem criptografia. Veja neste tópico algumas formas.http://forum.imasters.com.br/index.php?/topic/354968-protecao-de-senhas/

 

Ok, vou dar uma lida posteriormente, é pq o site é interno do orgão, daee essa não é a minha preocupação prioritária.

 

Segurança sempre tem que ser uma preocupação prioritária.

 

Não imagine que somente porque é um sistema interno, não há pessoas mal intencionadas.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Não grave sem criptografia. Veja neste tópico algumas formas.http://forum.imasters.com.br/index.php?/topic/354968-protecao-de-senhas/

 

Ok, vou dar uma lida posteriormente, é pq o site é interno do orgão, daee essa não é a minha preocupação prioritária.

 

Segurança sempre tem que ser uma preocupação prioritária.

 

Não imagine que somente porque é um sistema interno, não há pessoas mal intencionadas.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Valeu pela dica Beraldo, vou criptografar logo quando der.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloque este código depois do $dado = mysql...

 

echo 'Login digitado - '.$login.' e login do banco de dados - '.$dado['login'];
echo '<br/>Senha digitada - '.$senha.' e senha do banco de dados - '.$dado['senha'];

 

Veja o que imprime.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu mudei o nome da variavel $senha e coloquei um outro nome para essa variavel e deu td certo, só que é a segunda vez que isso acontece!!! será que é algum bug?? porque agora eu fiquei intrigado.

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.