Sempre que preciso de fazer alguma coisa em HTML, PHP e/ou MySQL, lá vem o problema da codificação de caracteres!
À partida, parece que tudo deveria correr bem!
Acontece que por omissão, quando é feita a ligação ao MySQL, o charset utilizado é o latin1, o que estraga logo a visualização dos caracteres (especiais).
A melhor solução que arranjei foi colocar a seguinte instrução, a seguir à definição da ligação à BD (mysql_connect):
#mysql_set_charset('utf8',$ligacao);
Caso não queisram utilizar esta solução e queiram apenas mudar a visualização de um ou outra variável, podem utilizar uma das seguintes instruções:
#utf8_encode($variavel);
#htmlentities($variavel);
Normalmente utilizo o xampp para Linux (lampp) para programar nestas plataformas, mas deve acontecer também em outras (mesmo quem utiliza Windows). Esta situação ocorre-me sempre ao ponto de me passar completamente com isto, então hoje, decidi despender 1 hora da minha vida a pesquisar com pés e cabeça sobre este assunto.
A codificação de caracteres é assunto que dá pano para mangas! De qualquer forma penso que estas instruções em PHP já ajudam bastante.
2 comments:
Obrigado pela dica!
Obrigado pela dica!
Enviar um comentário