sexta-feira, 25 de julho de 2008

Problemas com acentuação no Flex utilizando AMFPHP

Estou desenvolvendo meu projeto de Monografia, utilizando Flex com a linguagem PHP para acesso a Base de Dados PostgreSQL. No entanto, para realizar a comunicação entre o Flex e o PHP utilizo uma alternativa Open-Source que permite o uso da tecnologia Flash Remoting em servidores que utilizam o PHP sem a necessidade de instalação de nenhum recurso adicional no servidor em si, chamada AMFPHP.

No decorrer do desenvolvimento desse projeto me deparei com um problema de acentuação nos dados que retornavam para o Flex após uma consulta na Base de Dados. Pensei que fosse alguma configuração no "charset" do PHP ou do Apache. Conversando com meus colegas de profissão nos ocorreu a idéia de que o AMFPHP poderia ter também alguma configuração de "charset", e realmente tinha.

A seguinte linha no arquivo gateway.php que se encontra dentro do diretório do AMFPHP esta comentada:

//$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");

tiramos o comentário e salvamos o arquivo ficando assim:

$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");

no meu caso ja tinha a linha comentada se no seu caso a linha não estiver no arquivo basta inseri-la no mesmo.