ciao!

ho un problema su una nuova applicazione che non riesco proprio a capire.
partiamo dal basico:
Codice PHP:
$password '123456';
$hash password_hash($passwordPASSWORD_BCRYPT);
echo 
$hash '<br>';
if (
password_verify('123456'$hash)) {
    echo 
'OK';
} else {
    echo 
'KO';

questo codice funziona bene.
quell'hash l'ho preso e schiaffato dentro al campo password del db.
Mysql, e campo varchar(255).

questa la funzione di login che uso sempre:
Codice PHP:
public function login($user$pwd) {
    
$cmd 'SELECT * FROM utenti WHERE ut_email = ? AND ut_attivo = 1';
    
$res $this->connessione->execQueryPrepare($cmd, array($user));
    if (
count($res) > 0) {
        if (
password_verify($pwd$res[0]['password'])) {
            return 
json_encode(
                array(
                    
"res" => "ok",
                    
"message" => "Login effettuato!"
                
)
            );
        } else {
            return 
json_encode(
                array(
                    
"res" => "ko",
                    
"message" => "Password errata!"
                
)
            );
        }
    } else {
        return 
json_encode(
            array(
                
"res" => "ko",
                
"message" => "Email inesistente!"
            
)
        );
    }

rientro sempre nel caso di password errata.
questo il form:
codice:
<?php
if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['btn_login'])) {
    $utenti = new Utenti($connessione);
    $l = $utenti->login($_POST['email'], $_POST['password']);
    var_dump($l);
}
?>
<div class="form-group">
    <input type="email" class="form-control"
           name="email" placeholder="Email" value="email@email.it"
           autofocus>
</div>
<div class="form-group">
    <input type="password" class="form-control" value="123456"
           name="password" placeholder="Password">
</div>
..........
non c'è verso.
qualche idea??