Ir para conteúdo

POWERED BY:

Arquivado

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

- KbeçãO -

[Resolvido] UTF-8 ou LATIN-1 ?

Recommended Posts

Tanto faz, basta saber usar.

E padronizar tudo com apenas um deles.

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo, essa é umas pergunta relativa...

 

eu uso o latin-1(iso-8859-1), e explico pq, qdo eu gravo no bd ele não grava os caracteres com acento como caracteres estranhos, e já o utf-8 faz isso, e no bd eu coloco o latin-1...

 

mas isso é minha escolha, a sua é com você msm...

 

para retornar os caracters q estão aparecendo como estranhos eu se eu busco do bd e ele esta vindo assim e não usei um padrão, como o de usar um so tanto na aplicação qto no banco... eu uso um conversor UTF-8.:

function convertCharset($in_str)
{
 $cur_encoding = mb_detect_encoding($in_str) ;
 if($cur_encoding == "UTF-8" && mb_check_encoding($in_str,"UTF-8"))
   return $in_str;
 else
   return utf8_encode($in_str);
}

 

se quer pesquisar mais, eu procurei algo tipo converter charset em php e achei esta função no php org...

 

é facil de usa-lá e so fazer assim.:

include(funcao.php);
convertCharset($variavelComValor);

 

acho q foi isso sua duvida...

Compartilhar este post


Link para o post
Compartilhar em outros sites
qdo eu gravo no bd ele não grava os caracteres com acento como caracteres estranhos, e já o utf-8 faz isso,

isso so acontece se você tiver feito algo errado.

Tanto UTF qnto ISO devem gravar corretamente no banco, se você fizer da forma correta.

 

Todas essas gambiarras de 'conversao', e varios 'decodes', sao desnecessarios, se você fizer certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois e...

eu tinha u codigo, que era colocado justamente no arquivo de conexão...

mas perdi..

x/

você tem algm exemplo para me passar?

 

olhei na net e achei este...

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'); 

 

tentei aplica-lo na conexão mas n deu...

fiz assim:

 

$conn = mysql_connect("site.com.br", "bd", "senha"); //("servidor", "usuário", "senha" definidos no banco de dados)
if ($conn){
	mysql_select_db("nome_bd"); //seleção do banco de dados
	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'); 

       }else{
  echo "Conexão com o banco de dados falhou, tente novamente.";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

;P

ta certo n...

e que eu uso conexão remota com o servidor, entao nao ia postar os dados do bd..

ali foi so pra representar..

^^,

mas os codigos de configuração estao certos??

n foi me retornado nenhum erro...

mas continua sem os caracteres especiais.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Compartilhar este post


Link para o post
Compartilhar em outros sites

Compartilhar este post


Link para o post
Compartilhar em outros sites

realmente essa opção não estava marcada...

mas depois de marcala, é necessario alterar no proprio notpad, os caracteres especias,

pois depois de marcar a opção, ocorre o erro no notpad, mas é so reescrever o caractere que tudo fuinciona....

 

topico resolvido..

Compartilhar este post


Link para o post
Compartilhar em outros sites
pois depois de marcar a opção, ocorre o erro no notpad, mas é so reescrever o caractere que tudo fuinciona....

apenas para ficar uma dica, mais prática.

 

antes de mudar a codificação do arquivo, marcando aquela opção que mostrei na imagem acima.

selecione todo o script, texto (Ctrl+A), dê um recortar (Ctrl+X), então ai sim mude a codificação. Dessa forma, basta agora apertar colar (Ctrl+V), e você não vai precisar corrigir os caracteres.

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.