Boa tarde, agradeceria ajuda. Preciso para logar o usuário comparar sua senha com a cadastrada no banco de dados que utiliza hash.. O problema é que não sei como fazer para comparar as senhas e validar o usuário. O var_dump na query retorna:
string(74) "select * from perfil where email='pugui@pugui.com.br' and senha='123'"
e depois não compara e autentica o usuário.
segue o que tentei até o momento:
index.php
<form action="php/login.php" method="post">
<div class="form-group">
<input class="form-control" type="text" name="login" placeholder="Login" required>
</div>
<div class="form-group">
<input class="form-control" type="password" name="senha" placeholder="Senha" required>
</div>
<div class="form-group">
<input type="submit" class="btn btn-primary" value="Login">
</div>
</form>
login.php
$usuario = buscaUsuario($conexao, $_POST["login"], $_POST["senha"]);
//var_dump($usuario);exit;
if (password_verify($senha_base, $senha)) {
header("Location: ../index.php?login=0");
} else {
logarUsuario($usuario["login"]);
header("Location: ../index.php?login=1");
}
banco-usuario.php
<?php
function buscaUsuario($conexao, $login, $senha_base)
{
$login = mysqli_real_escape_string($conexao, $login);
$query = "select * from perfil where email='{$login}'
and senha='{$senha_base}'";
//var_dump($query);exit;
$resultado = mysqli_query($conexao, $query);
$usuario = mysqli_fetch_assoc($resultado);
return $usuario;
}
primeiro-perfil.php
class Primeiroperfil
{
public $id;
public $nome;
public $sobrenome;
public $email;
public $senha;
public function __construct()
{
}
public function getId()
{
return $this->id;
}
public function setId($id)
{
$this->id = $id;
}
public function getNome()
{
return $this->nome;
}
public function setNome($nome)
{
$this->nome = $nome;
}
public function getSobrenome()
{
return $this->sobrenome;
}
public function setSobrenome($sobrenome)
{
$this->sobrenome = $sobrenome;
}
public function getEmail()
{
return $this->email;
}
public function setEmail($email)
{
$this->email = $email;
}
public function getSenha()
{
return $this->senha;
}
public function setSenha($senha)
{
$senha_base = password_hash($senha, PASSWORD_DEFAULT);
$this->senha = $senha_base;
}
}