Ho un'applicazione php che dialogo con un db mysql
Ho la seguenti query:

Codice PHP:
$query "SELECT id, cognome, nome, " .
             
"data_visita,  " .
             
"data_nascita, telefono " .
             
"FROM pazienti " 
             
"WHERE " .
             
"date_format(data_visita, '%Y-%m-%d') between ? AND ?";
    
    if (
$stmt $mysqli->prepare($query)) {

        
$stmt->bind_param("dd"$data_inizio$data_fine);

        
$stmt -> execute();

        
$stmt->bind_result($id$cognome$nome
            
$data_visita_sql$id_appuntamento,
            
$data_nascita_sql$telefono);

        while (
$stmt->fetch()) {
ecc... 
Dove i parametri della query sono:
data_inizio: 2010-02-08
data_fine: 2010-02-12

La query viene eseguita ma tira fuori tropi risultati, nel senso che mi tira fuori i pazienti sia compresi nelle date che ho scritto, sia quelli compresi nelle date che ho scritto ma del mese prima, cioè mi restituisce anche i pazienti compresi nelle date
data_inizio: 2010-01-08
data_fine: 2010-01-12

secondo me sbaglio qualcosa nella sintassi della query, ma non vedo l'errore