chuvadenovembro Posted January 5, 2011 Share Posted January 5, 2011 Pessoal, Instalei um sistema em meu servidor, mas aconteceu um probleminha bem chato. Eu cadastrei uma palavra no sistema "português", assim que salvei, ele salvou como "PortuguÃ", fiz testes com outras palavras com acento e aconteceu a mesma coisa. Eu estava usando este mesmo sistema no meu outro servidor (cpanel), e havia funcionado normalmente. Este problema ocorre em um servidor com kloxo Gostaria de saber se é necessário fazer algum tipo de configuração mysql do kloxo para os caracteres especiais funcionar normalmente. Se sim, como devo proceder Obrigado Chuva █ AtarWeb.com.br • Hospedagem de Site + SSL Grátis █ Revenda de Hospedagem DirectAdmin SSD + SSL Grátis Link to comment Share on other sites More sharing options...
chuvadenovembro Posted January 5, 2011 Author Share Posted January 5, 2011 Pessoal, Aparentemente consegui resolver o problema seguindo este tópico: http://www.gdhpress.com.br/servidores/leia/index.php?p=cap6-22 + precisamente está dica: Continuando, a segunda opção é mudar a configuração do Apache para que ele passe a utilizar o ISO-8859-1 como charset padrão, em vez do UTF-8. Nas distribuições derivadas do Debian, isso é definido no arquivo "/etc/apache2/conf.d/charset". Edite o arquivo, substituindo a linha: AddDefaultCharset UTF-8 por: AddDefaultCharset ISO-8859-1 Se, por acaso, o arquivo "/etc/apache2/conf.d/charset" não estiver disponível (ou a configuração não surtir efeito), edite o arquivo "/etc/apache2/apache2.conf", descomentando (ou adicionando) a mesma linha. No Fedora/CentOS a opção é incluída diretamente no arquivo "/etc/httpd/conf/httpd.conf" (perto do final do arquivo), basta substituir a linha "AddDefaultCharset UTF-8" por "AddDefaultCharset ISO-8859-1", assim como no Debian. Se o servidor hospeda páginas escritas em português, é recomendável editar também a linha: LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw ... no "/etc/apache2/apache2.conf", mudando a ordem das linguagens, de forma que o pt-br e o pt fiquem no início: LanguagePriority pt-br pt en da nl et fr de el it ja ko no pl ltz ca es sv tw Para que a configuração entre em vigor, é preciso fazer com que o Apache 2 recarregue a configuração: # /etc/init.d/apache2 reload ou: # service httpd reload O detalhe é que eu estava desde a tarde procurando e só agora consegui achar essa dica :( █ AtarWeb.com.br • Hospedagem de Site + SSL Grátis █ Revenda de Hospedagem DirectAdmin SSD + SSL Grátis Link to comment Share on other sites More sharing options...
joaopaulo Posted January 5, 2011 Share Posted January 5, 2011 Bom... ao criar o BD: Conjunto de caracteres MySQL: Latin1 (latin_swedish_ci) Collation de conexão do MySQL: latin_swedish_ci Sempre use isso em qqr projeto de BD que vc faça :). Abraços Link to comment Share on other sites More sharing options...
PedroFelipe Posted January 5, 2011 Share Posted January 5, 2011 Sempre usei Latin1 e nunca tive problemas com isso :P Bem, fica aí a resolução para os que tiverem a mesma dúvida futuramente. Link to comment Share on other sites More sharing options...
chuvadenovembro Posted January 5, 2011 Author Share Posted January 5, 2011 Então João, No caso, o bd foi criado pelo kloxo, mas seria mesma coisa (creio eu) se tivesse criado pelo cpanel Ele cria conforme padrão do servidor (eu acho) E no caso do kloxo e cpanel, não ha opção p/ criar o banco de dados com estes dados que tu comentou, apenas se eu fosse criar diretamente no phpadymim (que só vi estas opções de criação no kloxo :S █ AtarWeb.com.br • Hospedagem de Site + SSL Grátis █ Revenda de Hospedagem DirectAdmin SSD + SSL Grátis Link to comment Share on other sites More sharing options...
PedroFelipe Posted January 5, 2011 Share Posted January 5, 2011 Qual o problema com o Unicode (UTF-8)? Se esse for o charset padrão, sempre que eu importo uma DB no phpMyAdmin os acentos bugam. Aí mudando para Latin 1 o problema é corrigido. Link to comment Share on other sites More sharing options...
Rafael Cresci Posted January 5, 2011 Share Posted January 5, 2011 Só que essa dica aí é a solução tapa-buraco do pedreiro. O certo é usar UTF-8 (tecnologia mais nova, etc). O programa (PHP, Apache) é que tem que rodar em UTF-8, não o BD... Link to comment Share on other sites More sharing options...
joaopaulo Posted January 5, 2011 Share Posted January 5, 2011 (edited) Só que essa dica aí é a solução tapa-buraco do pedreiro. O certo é usar UTF-8 (tecnologia mais nova, etc). O programa (PHP, Apache) é que tem que rodar em UTF-8, não o BD... A UTF-8 é tão antiga quanto os demais padrões, as collations variam conforme a versão do sistema operacional e do SGBD/SRGBD utilizado. No caso, você pode consultar uma extensa lista aqui, não existe isso de tecnologia mais novas :S http://www.collation-charts.org/mysql60/ Sugiro olhar com atenção a collation latin1_swedish_ci e verás que ele comporta todos caracteres de nossa língua, enquanto somente a collation utf8_swedish_ci teria os caracteres de nossa língua e alguns extras. Mas o problema é que por padrão, usa-se o utf8_bin que por sua vez não tem caracteres acentuados... Atente ainda para o fato, de que a aplicação tem de estar sendo interpretada pelo browser no mesmo conjunto de caracteres. No caso do HTML, sempre coloque na header a meta-tag: <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" /> Se você for usar Ajax, poderá haver erros de acentuação decorrentes do arquivo.php chamado não estar usando o mesmo conjunto de caracteres, nesse caso, usa-se a função: header("Content-Type: text/html; charset=ISO-8859-1", true); basta coloca-la no topo do arquivo.php. Abraços Edited January 5, 2011 by joaopaulo Link to comment Share on other sites More sharing options...
chuvadenovembro Posted January 5, 2011 Author Share Posted January 5, 2011 Pessoal, E este procedimento que precisei fazer, o servidor estava em utf-8 e eu mudei para iso...corrigiu o problema. Lembrando que o banco de dados foi criado no servidor (não foi importado) Nos outros servidores que eu tenho, nunca passei por isso (de precisar reconfigurar o servidor) Então eu pergunto...a solução que encontrei é a mais correta? haveria outra coisa que poderia ser feita? para "solucionar" este mesmo problema? Abração e vamo que vamo █ AtarWeb.com.br • Hospedagem de Site + SSL Grátis █ Revenda de Hospedagem DirectAdmin SSD + SSL Grátis Link to comment Share on other sites More sharing options...
Jordan Miguel Posted January 6, 2011 Share Posted January 6, 2011 Ótimas dicas joão. Eu utilizei a utf-8 de início no site, mas depois acabei convertendo tudo para iso-8859-1 e estou com ela até agora. Link to comment Share on other sites More sharing options...
Recommended Posts