Codificação UTF-8 certa porém os browsers não escolhem ela.

4,070 views
Skip to first unread message

Walter

unread,
Feb 27, 2009, 8:00:52 AM2/27/09
to CakePHP Tuga
Opa pessoal.

Acabei de por um site no ar e adivinhem... acentos bugados.

O site está com a codificação em UTF-8
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
><title>sistema administrativo</title>

porém no browser ele seleciona o ISO-8859-1. Em todas as máquinas
daqui, tanto windows como linux, IE como FireFox se a pessoa quiser
visualizar certo teria que escolher a codificação UTF-8 na mão.

Alguém sabe o motivo para não estar sendo selecionado corretamente?
Preciso colocar no ar para os clientes verem hoje mas desse jeito não
da, eles vão ter um ataque.

Obrigado

Vinícius Santos

unread,
Feb 27, 2009, 8:10:09 AM2/27/09
to cakep...@googlegroups.com
Ae Walter, todos os acentos estão assim ou somente o que vem do banco?

<?php echo $html->charset(); ?>

com o código acima (padrão do cake) já fica utf-8, vc colocando o banco como utf-8 tb não deveria haver problema..

abraço

Vinícius


2009/2/27 Walter <lobo...@gmail.com>

Opa pessoal.

Acabei de por um site no ar e adivinhem... acentos bugados.

O site est� com a codifica��o em UTF-8

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
><title>sistema administrativo</title>

por�m no browser ele seleciona o ISO-8859-1. Em todas as m�quinas

daqui, tanto windows como linux, IE como FireFox se a pessoa quiser
visualizar certo teria que escolher a codifica��o UTF-8 na m�o.

Algu�m sabe o motivo para n�o estar sendo selecionado corretamente?
Preciso colocar no ar para os clientes verem hoje mas desse jeito n�o
da, eles v�o ter um ataque.

Obrigado



Vinícius Santos

unread,
Feb 27, 2009, 8:11:20 AM2/27/09
to cakep...@googlegroups.com
confira tb se no core.php está assim

Configure::write('App.encoding', 'UTF-8');

[]'s

Vinícius

2009/2/27 Vinícius Santos <vini...@gmail.com>

Walter Discher Cechinel

unread,
Feb 27, 2009, 8:27:30 AM2/27/09
to cakep...@googlegroups.com
Está tudo certo.
Localmente funciona perfeitamente os acentos em todas as máquinas que eu testo, o problema só ocorre quando envio para o servidor.

Os acentos ficam errados no HTML mesmo, quando eu uso codificação &aacute por exemplo, eles ficam certos.

Estou achando que o servidor está enviando os dados com a codificação ISO 8859-1 mesmo eu setando como UTF-8 no cabeçalho.

Como eu poderia mudar?

Obrigado

2009/2/27 Vinícius Santos <vini...@gmail.com>

Juan Basso

unread,
Feb 27, 2009, 8:41:39 AM2/27/09
to CakePHP Tuga
Vamos aos passos:
- Você deve definir no core.php a codificação; OK
- Colocar $html->charset() no layout; OK
- Colocar seu database para falar UTF-8; OK
- Seus arquivos devem estar em UTF-8 (com ou sem BOM); Está?
- Ao enviar para o servidor, envie seus arquivos como binário; Aqui
que eu acho que está o grande problema. Quando envia como ASCII, ele
envia o texto puramente, mudando a codificação.


Juan Basso

On 27 fev, 10:27, Walter Discher Cechinel <loboci...@gmail.com> wrote:
> Está tudo certo.
> Localmente funciona perfeitamente os acentos em todas as máquinas que eu
> testo, o problema só ocorre quando envio para o servidor.
>
> Os acentos ficam errados no HTML mesmo, quando eu uso codificação &aacute
> por exemplo, eles ficam certos.
>
> Estou achando que o servidor está enviando os dados com a codificação ISO
> 8859-1 mesmo eu setando como UTF-8 no cabeçalho.
>
> Como eu poderia mudar?
>
> Obrigado
>
> 2009/2/27 Vinícius Santos <vinish...@gmail.com>
>
> > confira tb se no core.php está assim
>
> > Configure::write('App.encoding', 'UTF-8');
>
> > []'s
>
> > Vinícius
>
> > 2009/2/27 Vinícius Santos <vinish...@gmail.com>
>
> > Ae Walter, todos os acentos estão assim ou somente o que vem do banco?
>
> >> <?php echo $html->charset(); ?>
>
> >> com o código acima (padrão do cake) já fica utf-8, vc colocando o banco
> >> como utf-8 tb não deveria haver problema..
>
> >> abraço
>
> >> Vinícius
>
> >> 2009/2/27 Walter <loboci...@gmail.com>

Walter

unread,
Feb 27, 2009, 8:53:56 AM2/27/09
to CakePHP Tuga
Opa.
Essa última foi uma boa idéia, acabei de fazer isto mas infelizmente
continua dando os erros de codificação.

Eu dei um phpinfo no servidor e teve uma linha que me deixou meio
encucado:


HTTP Response Headers
Connection close
Transfer-Encoding chunked
Content-Type text/html; charset=ISO-8859-1

Será que o servidor não está forçando a codificação?


On 27 fev, 10:41, Juan Basso <jrba...@gmail.com> wrote:
> Vamos aos passos:
> - Voc deve definir no core.php a codifica o; OK
> - Colocar $html->charset() no layout; OK
> - Colocar seu database para falar UTF-8; OK
> - Seus arquivos devem estar em UTF-8 (com ou sem BOM); Est ?
> - Ao enviar para o servidor, envie seus arquivos como bin rio; Aqui
> que eu acho que est o grande problema. Quando envia como ASCII, ele
> envia o texto puramente, mudando a codifica o.
>
> Juan Basso
>
> On 27 fev, 10:27, Walter Discher Cechinel <loboci...@gmail.com> wrote:
>
> > Est tudo certo.
> > Localmente funciona perfeitamente os acentos em todas as m quinas que eu
> > testo, o problema s ocorre quando envio para o servidor.
>
> > Os acentos ficam errados no HTML mesmo, quando eu uso codifica o &aacute
> > por exemplo, eles ficam certos.
>
> > Estou achando que o servidor est enviando os dados com a codifica o ISO
> > 8859-1 mesmo eu setando como UTF-8 no cabe alho.
>
> > Como eu poderia mudar?
>
> > Obrigado
>
> > 2009/2/27 Vin cius Santos <vinish...@gmail.com>
>
> > > confira tb se no core.php est assim
>
> > > Configure::write('App.encoding', 'UTF-8');
>
> > > []'s
>
> > > Vin cius
>
> > > 2009/2/27 Vin cius Santos <vinish...@gmail.com>
>
> > > Ae Walter, todos os acentos est o assim ou somente o que vem do banco?
>
> > >> <?php echo $html->charset(); ?>
>
> > >> com o c digo acima (padr o do cake) j fica utf-8, vc colocando o banco
> > >> como utf-8 tb n o deveria haver problema..
>
> > >> abra o
>
> > >> Vin cius

Marcelo Andrade

unread,
Feb 27, 2009, 12:25:54 PM2/27/09
to cakep...@googlegroups.com
2009/2/27 Walter <lobo...@gmail.com>:
> (..)

Confira se seu servidor web está servindo páginas em UTF-8.
Se estiver usando o Apache, descomente ou adicione uma
linha como a abaixo no arquivo de configuração:

AddDefaultCharset UTF-8

Atenciosamente.

--
MARCELO DE F. ANDRADE (aka "eleKtron")
Belem, PA, Amazonia, Brazil
Linux User #221105

[gus@pará ~]# links http://pa.slackwarebrasil.org/

Walter

unread,
Feb 27, 2009, 12:33:29 PM2/27/09
to CakePHP Tuga
Coloquei isto no htaccess do cake e agora está funcionando
perfeitamente.

Obrigado =]

Tinha que ser a locaweb para enviar iso 8859-1 como padrão x.x'

On 27 fev, 14:25, Marcelo Andrade <mfandr...@gmail.com> wrote:
> 2009/2/27 Walter <loboci...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages