Consultar retorna 8859-1 e não UTF-8

1. Consultar retorna 8859-1 e não UTF-8

Perfil removido
removido

(usa Nenhuma)

Enviado em 25/08/2014 - 11:37h

Amigos, agradeço antecipadamente qualquer ajuda para solucionar isso...

Estou fazendo testes com apache 2.4 e postgreSQL 9.4 no Debian Jessie.

Tenho um script em PERL que apache vê com um CGI. Não é CGI:: é apenas uma série
de comandos em PERL que geram uma página HTML.

Esse script faz consulta ao Postgresql. Isso funciona OK. Abre o banco, lê os registros e gera
um SELECT.O apache manda o script para o navegador sem problemas.

A QUESTÃO é que os dados que saem do Postgresql são ISO-8859-1 e ficam mal formados.

Essa página é codificada como <!DOCTYPE html> e usar print "Content-Type: text/html; charset=utf-8\n\n";

e também tem a tag <meta charset='utf-8'>

O arquivo do script é UTF-8 nativo
=======================================
# file kyetoy.cgi
kyetoy.cgi: HTML document, UTF-8 Unicode text


Tudo no Debian aqui é pt_BR.UTF-8.


Comando dado no BASH
=================
# locale -a
C
C.UTF-8
POSIX
pt_BR.utf8

Comando dado no BASH
====================
# locale
LANG=pt_BR.UTF-8
LANGUAGE=pt_BR.UTF-8
LC_CTYPE="pt_BR.UTF-8"
LC_NUMERIC="pt_BR.UTF-8"
LC_TIME="pt_BR.UTF-8"
LC_COLLATE="pt_BR.UTF-8"
LC_MONETARY="pt_BR.UTF-8"
LC_MESSAGES="pt_BR.UTF-8"
LC_PAPER="pt_BR.UTF-8"
LC_NAME="pt_BR.UTF-8"
LC_ADDRESS="pt_BR.UTF-8"
LC_TELEPHONE="pt_BR.UTF-8"
LC_MEASUREMENT="pt_BR.UTF-8"
LC_IDENTIFICATION="pt_BR.UTF-8"
LC_ALL=

Comando dado na linha de comando consultando o postgres
========================

Lista dos bancos de dados
Nome | Dono | Codificação | Collate | Ctype | Privilégios de acesso
-----------+----------+-------------+-------------+-------------+-----------------------
colegio | kyetoy | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 |
escola | kyetoy | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 |
postgres | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 |
template0 | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | pt_BR.UTF-8 | pt_BR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(5 registros)

Comando dado dentro do PSQL
====================

colegio=# SHOW client_encoding;
client_encoding
-----------------
UTF8
(1 registro)


OBRIGADO.



  


2. Re: Consultar retorna 8859-1 e não UTF-8

Perfil removido
removido

(usa Nenhuma)

Enviado em 25/08/2014 - 13:40h

dentro do PSQL retorna tudo UTF-8

O problema é no browser e quando rodo na linha de comando do bash.



escola=# SELECT * FROM ALUNOS;
matricula | nome
-----------+------------------------
1 | Érica Soares Ângela
2 | Sandra Roussef César
3 | Cláudio Félix da Silva







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts