Grazie per l'aiuto.
Nella pagina era già presente questa stringa
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

e la codifica del database è latin1_swedish_ci.

Ho provato a sostituire
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
con
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
ma in tutte le pagine ho avuto problemi nell'interpretazione dei caratteri.

Ho risolto filtrando i dati con la funzione qui sotto prima di metterli nel database
function caratteriparticolari($stringa){
$stringa = str_replace("à","&agrave;",$stringa);
$stringa = str_replace("è","&egrave;",$stringa);
$stringa = str_replace("ì","&igrave;",$stringa);
$stringa = str_replace("ò","&ograve;",$stringa);
$stringa = str_replace("ù","&ugrave;",$stringa);
return $stringa;
}
Sembra che ora funzioni tutto bene.