il problema è che la pagina che vai a recuperare con file_get_contents potrebbe non essere utf-8;
prova a usare utf_encode *prima* di inserire il testo nel db. esempio:
codice:$query = "insert into nometabella (nomecampo) values (".utf8_encode($testo).")";