Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

sobre o curso de php na parte 3

galera eu nao sei pq mais meus codigos sempre dao falsos mesmo eu colando o email e a senha certa ele da erro.. alguem poderia me ajudar: banco-usuario.php

<?php 
function buscaUsuario($conexao, $email, $senha){
    $senhaMd5 = md5($senha);
    $query = "select * from usuarios where email='{$emai}' and senha = '{$senhaMd5}'";
    $resultado = mysqli_query($conexao, $query);
    $usuario = mysqli_fetch_assoc($resultado);
    return $usuario;
}

login.php

<?php include("conecta.php");
include ("banco-usuario.php");

$usuario = buscaUsuario($conexao, $_POST["email"], $_POST["senha"]);
if($usuario == null){
    header("Location: index.php?login=0");
} else {
    setcookie("usuario_logado", $usuario["email"], time() + 60);
    header("Location: index.php?login=1");
}
die();

e o index.php

<?php include("cabecalho.php")?>
<?php if(isset($_GET["login"]) && $_GET["login"]==true) { ?>
<p class="alert-success">Logado com sucesso!</p>
<?php }?>
<?php if(isset($_GET["login"]) && $_GET["login"]==false) { ?>
<p class="alert-danger">Usuário ou senha inválida!</p>
<?php }?>


<h1>Bem Vindo!</h1>
        <?php if(isset($_COOKIE["usuario_logado"])){?>
            <p class="text-success">Você está logado como <?php$_COOKIE["usuario_logado"]?></p>
        <?php } else {?>
<h2>Login</h2>
<form action="login.php" method="post">
<table class="table">
<tr>
<td>Email</td>
<td><input class="form-control" type="email" name="email"></td>
</tr>
<tr>
<td>Senha</td>
<td><input class="form-control" type="password" name="senha"></td>
</tr>
<tr>
<td><button type="submit" class="btn btn-primary">Login</button></td>
</tr>
</table>
</form>
        <?php }?>
<?php include("rodape.php");?>

alguem poderia me ajudar grato desde já :)

4 respostas

No banco, você gravou sua senha no formato MD5? Para saber, basta abrir PHPMyADMIN e realizar uma consulta na tabela. Se estiver algo ilegível lá, está ok, mas se você consegue ler a senha, é porque não gravou em MD5.

Eu não lembro, é LOGIN ou email o nome do campo no banco? Verifique isso também! :)

solução!

não já achei o erro está aki ó

 $query = "select * from usuarios where email='{$emai}' and senha = '{$senhaMd5}'";

perceba que eu coloquei emai e não email tendeu!

Caramba, foi ninja, eu nem tinha percebido!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software