Vou responder aqui porque é muito longo para um comentário.
Você não precisa alterar sua codificação, você deve verificar sua codificação. Tenha em mente que a codificação pode ser alterada em muitos lugares diferentes:
- Em seu banco de dados com funções de conjunto de caracteres
- Na configuração do apache com AddDefaultCharset
- Com php função de cabeçalho
- No seu html com um
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
etiqueta
Qualquer um desses motivos pode levar à codificação incorreta exibida no navegador da web. E se você não especificar com um ou mais dos métodos anteriores, a camada correspondente usará seu padrão configurado.
No seu caso, já que o texto vem do banco de dados e como muitas vezes no WAMP/XAAMP/MAMP o MySQL usa uma codificação padrão estranha, eu verificaria o ponto um. Tente executar
SET NAMES UTF-8
(ou qualquer codificação que você use) consulte antes recuperando dados, logo após sua função db connect.