Być może błąd leży w zestawie znaków, za pomocą którego obsługujesz stronę. Jeśli pobierasz zawartość UTF-8 z bazy danych i udostępniasz ją z domyślnym kodowaniem HTML Windows-1252, to będzie to wyglądać na zniekształcone. Upewnij się, że masz odpowiednik tego:
header( 'Content-Type: text/html; charset=utf-8' );
w kodzie PHP.