Jump to content


Photo

Problemas Com Caracteres


  • Faça o login para participar
5 replies to this topic

#1 ratazana

ratazana

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Feminino
  • Localidade:Guaratuba - PR

Posted 12/06/2010, 12:25

Eu estou tentando resolver um problema com caracteres que são gravados no banco com acentuação trocada. Tentei resolver alterando o collation, mas não sei para qual configuração trocar. O problema começou quando atualizei o EasyPHP para a versao 5.2.10.

Como devem ser estas configuraçãoes para que a acentuação de certo?
Como deve ser setado o collation? como deve ser setada a meta tag?

a meta tag da pagina que executa o insert esta assim:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

OBS executei o comando SHOW VARIABLES LIKE 'character%'; e ele imprimiu:
Variable_name Value
character_set_client utf8
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir C:\Arquivos de programas\EasyPHP5.2.10\mysql\share...

#2 Fernando C

Fernando C

    Ativo

  • Usuários
  • 371 posts
  • Sexo:Masculino
  • Localidade:SP

Posted 14/06/2010, 10:16

Olha, se ainda n resolveu, tente o seguinte:
ao criar 1 nova tabela no phpmyadmin (n uso esse programa, acho mt complicado),
vc deve configurar o collation p/ cada novo campo como latin1.bin
(q é o correspondente ao iso-8859-1, europeu ocidental);

em tabelas ja existentes, siga os passos:
abra a pg principal do phpmyadmin (localhost),
selecione o banco a esquerda e a tabela a direita - estrutura;
selecione os campos (nos checkbox) - "alterar" (1 icone q é 1 pequeno lapis);
ai altera o collation p/ latin1 (em cada campo) - salvar.

#3 ratazana

ratazana

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Feminino
  • Localidade:Guaratuba - PR

Posted 15/06/2010, 12:15

Não deu certo.
Mudei tudo para latin1.bin e o problema continua:

quando tento inserir em um campo de texto "vovô vovó não" é inserido na tabela assim: "vovô vovó não"

Obs1. quando executo o insert direto no SQL do PHPmyadmin, não há troca de caracteres, só quando os dados são inseridos através do navegador
Obs2. agora quando executo o sql SHOW VARIABLES LIKE 'character%' ele retorna a nova setagem:
Variable_name Value
character_set_client utf8
character_set_connection latin1
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir C:\Arquivos de programas\EasyPHP5.2.10\mysql\share
:( :( :(

#4 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 16/06/2010, 09:41

Coloque tudo como UTF-8 ... as tabelas... e tudo mais...

Quando os dados forem inseridos no banco... eles irão ficar assim mesmo com caracteres que você não conhece..

Mas quando você realizar a consulta e exibir na tela... vai ficar tudo certo...
Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#5 ratazana

ratazana

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Feminino
  • Localidade:Guaratuba - PR

Posted 16/06/2010, 16:58

Deu certo em parte,
Realmente, desse jeito no navegador não há problemas de caracteres, alterei os campos da tabela e o banco de dados para utf8, e o navegador exibe tudo ok.
O problema é quando for preciso inserir ou alterar dados manualmente pelo easy php, por exemplo se eu insiro "Merrél vanê", o navegador exibe "Merr�l van�"
Ou seja, eu vou ter que sempre fazer os selects e inserts pelo navegador... :o

#6 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 16/06/2010, 17:52

Para fazer testes... você pode fazer o seguinte...

Utilize a função utf_encode do PHP que você vai conseguir isso tranquilamente.
Ele vai codificar de acordo com os caracteres do banco.

(y)
Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq