Marcos Vinicius Mocelin Postado Abril 29, 2012 Denunciar Share Postado Abril 29, 2012 Olá galera, estou desenvolvendo um sistema e tenho uma tela de login, porem quando vou fazer o login ele não funciona, segue a estruturaArquivo conecta :<?php# FileName="Connection_php_mysql.htm"# Type="MYSQL"# HTTP="true"$hostname_conexao = "localhost";$database_conexao = "banco";$username_conexao = "usuariot";$password_conexao = "senha";$conexao = mysql_pconnect($hostname_conexao, $username_conexao, $password_conexao) or trigger_error(mysql_error(),E_USER_ERROR)?> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Arquivo Validacao :<?php// Verifica se houve POST e se o usuário ou a senha é(são) vazio(s)if (!empty($_POST) AND (empty($_POST['usuario']) OR empty($_POST['senha']))) { header("Location: ../index.php"); exit;}include ("conecta.php");$usuario = mysql_real_escape_string($_POST['usuario']);$senha = mysql_real_escape_string($_POST['senha']);// Validação do usuário/senha digitados$sql = "SELECT 'id', 'nome' FROM 'usuarios' WHERE ('usuario' = '".$usuario."') AND ('senha' = '".md5($senha)."') AND ('ativo' = 1)";$query = mysql_query($sql);if (mysql_num_rows($query) != 1) { // Mensagem de erro quando os dados são inválidos e/ou o usuário não foi encontrado echo "Login inválido!"; exit;} else { // Salva os dados encontados na variável $resultado $resultado = mysql_fetch_assoc($query); // Se a sessão não existir, inicia uma if (!isset($_SESSION)) session_start(); // Salva os dados encontrados na sessão $_SESSION['UsuarioID'] = $resultado['id']; $_SESSION['UsuarioNome'] = $resultado['nome']; // Redireciona o visitante header("Location: ../inicial.php"); exit;}?>---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Arquivo Lgout:<?php session_start(); // Inicia a sessão session_destroy(); // Destrói a sessão limpando todos os valores salvos header("Location: ../index.php"); exit; // Redireciona o visitante?>-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Arquivo Index :<html><head><title>Login no Sistema - CAF</title><meta http-equiv="Content- Type" content="text/html; charset=iso-8859-1"><?phpinclude "css.php";?></head><body ><div id="telaLogin"> <div id="login"> <h2>Login</h2> <form name="formLogin" method="POST" action="./conf/validacao.php"> <h4>Usuario</h4> <input id="txUsuario" type="text" name="usuario" size="30"> <h4>Senha</h4> <input id="txSenha" type="password" name="senha" size="30"><br><br> <input type="submit" value="Entrar" id="btnEntrar"> </form> <div id="logoLogin"> </div> </div></div></body></html>---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------No banco de dados o usuario e senha estao inserido com crip md5porem quando coloco o usuario e senha e direciona para o usuario e senha invalidos.Desde já agradeço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Abril 29, 2012 Denunciar Share Postado Abril 29, 2012 Troca$query = mysql_query($sql);Por$query = mysql_query($sql) OR DIE(mysql_error());Isso vai retornar se a consulta tem algum erro. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Vinicius Mocelin Postado Abril 29, 2012 Autor Denunciar Share Postado Abril 29, 2012 Troca$query = mysql_query($sql);Por$query = mysql_query($sql) OR DIE(mysql_error());Isso vai retornar se a consulta tem algum erro.Me retornoou esse erroYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''usuarios' WHERE ('usuario' = 'admin') AND ('senha' = '21232f297a57a5a743894a0e4' at line 1 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Abril 29, 2012 Denunciar Share Postado Abril 29, 2012 $sql = "SELECT id, nome FROM usuarios WHERE usuario = '$usuario' AND senha = '".md5($senha)."' AND ativo = '1'"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Vinicius Mocelin Postado Abril 29, 2012 Autor Denunciar Share Postado Abril 29, 2012 $sql = "SELECT id, nome FROM usuarios WHERE usuario = '$usuario' AND senha = '".md5($senha)."' AND ativo = '1'";Ok, deu certo a sintax, porem só direciona para o login invalido...acho que é por causa do md5... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 blew Postado Abril 30, 2012 Denunciar Share Postado Abril 30, 2012 quando você salva no banco, ta salvando com o md5?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Vinicius Mocelin Postado Maio 1, 2012 Autor Denunciar Share Postado Maio 1, 2012 quando você salva no banco, ta salvando com o md5??Sim... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Mateus Conti Postado Maio 1, 2012 Denunciar Share Postado Maio 1, 2012 você já tentou entrar com o login com a senha criptografada ao invez da senha criada ???Tipw você criou usuario joaosenha 123ai ela te envia pro banco de dados " a8dsfasd9f8sd9f " você já tento entrar com essa senha " a8dsfasd9f8sd9f "porque as vezes da erro que nem esta dando comigo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Vinicius Mocelin Postado Maio 1, 2012 Autor Denunciar Share Postado Maio 1, 2012 Descobrei, o tamanho do campo tava menor do que o tamanho do hash Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Marcos Vinicius Mocelin
Olá galera, estou desenvolvendo um sistema e tenho uma tela de login, porem quando vou fazer o login ele não funciona, segue a estrutura
Arquivo conecta :
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_conexao = "localhost";
$database_conexao = "banco";
$username_conexao = "usuariot";
$password_conexao = "senha";
$conexao = mysql_pconnect($hostname_conexao, $username_conexao, $password_conexao) or trigger_error(mysql_error(),E_USER_ERROR)
?>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Arquivo Validacao :
<?php
// Verifica se houve POST e se o usuário ou a senha é(são) vazio(s)
if (!empty($_POST) AND (empty($_POST['usuario']) OR empty($_POST['senha']))) {
header("Location: ../index.php"); exit;
}
include ("conecta.php");
$usuario = mysql_real_escape_string($_POST['usuario']);
$senha = mysql_real_escape_string($_POST['senha']);
// Validação do usuário/senha digitados
$sql = "SELECT 'id', 'nome' FROM 'usuarios' WHERE ('usuario' = '".$usuario."') AND ('senha' = '".md5($senha)."') AND ('ativo' = 1)";
$query = mysql_query($sql);
if (mysql_num_rows($query) != 1) {
// Mensagem de erro quando os dados são inválidos e/ou o usuário não foi encontrado
echo "Login inválido!"; exit;
} else {
// Salva os dados encontados na variável $resultado
$resultado = mysql_fetch_assoc($query);
// Se a sessão não existir, inicia uma
if (!isset($_SESSION)) session_start();
// Salva os dados encontrados na sessão
$_SESSION['UsuarioID'] = $resultado['id'];
$_SESSION['UsuarioNome'] = $resultado['nome'];
// Redireciona o visitante
header("Location: ../inicial.php"); exit;
}
?>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Arquivo Lgout:
<?php
session_start(); // Inicia a sessão
session_destroy(); // Destrói a sessão limpando todos os valores salvos
header("Location: ../index.php"); exit; // Redireciona o visitante
?>
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Arquivo Index :
<html>
<head>
<title>Login no Sistema - CAF</title>
<meta http-equiv="Content- Type" content="text/html; charset=iso-8859-1">
<?php
include "css.php";
?>
</head>
<body >
<div id="telaLogin">
<div id="login">
<h2>Login</h2>
<form name="formLogin" method="POST" action="./conf/validacao.php">
<h4>Usuario</h4>
<input id="txUsuario" type="text" name="usuario" size="30">
<h4>Senha</h4>
<input id="txSenha" type="password" name="senha" size="30"><br><br>
<input type="submit" value="Entrar" id="btnEntrar">
</form>
<div id="logoLogin">
</div>
</div>
</div>
</body>
</html>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
No banco de dados o usuario e senha estao inserido com crip md5
porem quando coloco o usuario e senha e direciona para o usuario e senha invalidos.
Desde já agradeço
Link para o comentário
Compartilhar em outros sites
8 respostass 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.