Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Francisco Brito

[Resolvido] Converter acentos para UTF-8 dentro do database

Recommended Posts

Bom pessoal... Sofri muito, tentei varios tutoriais nada deu certo.

 

Estive vendo minhas aplicações, que eu pensava estar em UTF-8 pois html´s php´s e charset todos configurados para utf-8 e arquivos salvos como utf-8.

 

Porem dentro do database, tudo que eu gravava que tinha acento, era gravado assim: í ã é çã

 

Descobri, que colocando essas linhas na minha string de conexão resolveria o problema:

 

mysql_query("SET NAMES 'utf8'");

mysql_query('SET character_set_connection=utf8');

mysql_query('SET character_set_client=utf8');

mysql_query('SET character_set_results=utf8');

 

O problema veio depois, os registros agora estavam sendo gravados com acentuação correta dentro do database, mas os registros antigos todos estavam sendo exibidos errados.

Resumindo, procurei de tudo para converter meu database antigo... mais de 2 dias (dia inteiro na frente do pc) tentando e NADA.

 

Certa hora, fiz um dump de meu sql... resultou no arquivo database.sql

 

Abri este arquivo no bloco de notas, cliquei em salvar como, e percebi que a opção para salvar era UTF-8...

 

Resolvi salvar como ANSI

 

E AI VEIO A MAGICA...

 

Restaurei o arquivo no meu database... e PRONTO... TUDO COM ACENTUAÇÃO PERFEITA.

 

Agora... sobre a magica...

 

Porque não há isto postado em lugar nenhum? Eu tentei uns 200 tutoriais para converter esses acentos e nada. Até uma maquina virtual linux eu criei para tentar converter isto.

 

Espero poder ajudar alguem com este post, pois pra mim isto foi REALMENTE MUITO UTIL.

 

(O mais importante, é que acabei fazendo isto sem querer... fiz sem intenção, e abri o banco de dados e percebi que os acentos estavam corretos... ai apaguei novamente, restaurei o arquivo de novo, e percebi que foi salvando o arquivo como ANSI que funcionou).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estava na mesma situação do amigo aqui em cima...

Porém o que ele comentou acabou não me ajudando, vou dar uma outra tentativa para os desesperados.

 

Eu possuía uma tabela do excel e queria transformá-la p/ CSV para colocar no banco e fiz os procedimentos dos tutoriais por ai,

Copiar p/ bloco de notas(notepad++), trocar TAB por ',' e finalmente mudar a codificação para UTF - 8 para poder inserir no BD porém nada disso funcionou... tentei por horas.

 

Solução:

Na versão que eu utilizo do PHP myAdmin é possível fazer a conversão diretamente da tabela do excel:

Importar;

Excel 2007 XLSX Workbook ;

Agora sim basta verificar se tudo está em UTF-8;

Escolher o arquivo do excel;

E visualizar toda a acentuação como deve ser!!

 

Espero ter ajudado alguém, pois esses problemas são bem comuns e as vezes persistem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.