Il problema è stato risolto specificando nel file html utf8_general_ci invece che utf-8 in modo da avere esattamente uguale il charset nel database e nel file html, specificare solo utf-8 nel file html credevo fosse corretto invece sembra proprio non esserlo dai risultati che ha dato.