Resolvendo definitivamente problemas com acentuação no php

Resolvendo definitivamente problemas com acentuação no php

31/08/2017 às 16:00WordPress

Você já foi acessar um website e se deparou com uma página com textos um pouco “diferentes” do esperado? Palavras com acentuação acabam ficando desconfiguradas e isso é culpa do... De quem seria a culpa de uma configuração errada da aplicação? Ainda que não seja um problema intencional, alguns programadores podem ter problemas para definir corretamente o charset de uma página e assim ela passa a apresentar problemas para interpretar nossos caracteres UTF-8. Uma alternativa algumas vezes é o uso do charset ISO-8859-1, porém não é o mais indicado a se fazer, por ser um conjunto de caracteres que podem apresentar problemas com alguns navegadores configurados para UTF-8 e com o php também configurado com o charset padrão, você pode entender um pouco mais lendo sobre 5 boas práticas que ajudam qualquer programador php.

Os problemas da acentuação errada

Quando você depende do seu site para conseguir captar mais clientes, estar posicionado da forma correta nos motores de busca, trazer ao visitante um bom conteúdo, informativo e de fácil entendimento, aliado a uma experiência de navegação agradável, tudo isso te dá pontos positivos para o sucesso, mas quando o seu conteúdo apresenta erros de acentuação e consequentemente leitura, isso começa a trazer problemas para a retenção do seu público. É importante sempre verificar todas as páginas enviadas para seus servidores, cada atualização de conteúdo e formulários de contato para que você não comece a perder clientes por conta da comunicação falha devido a esses caracteres errados. Esse problema não é comum com uma hospedagem de site bem configurada, mas sim ao seu código, então tenha atenção redobrada.

Como definir a acentuação correta nos arquivos?

Os problemas de acentuação geralmente são originados pelos editores que não estão configurados da forma correta, no geral, basta alterar a formatação para o padrão UTF-8 antes de salvar os arquivos. Os editores para programação no geral não apresentam muitos problemas, a escolha do editor de código correto fará toda a diferença na hora de enviar seus arquivos e verificar que tudo está funcionando corretamente, mas você pode ter esse tipo de imprevisto editando rapidamente arquivos pelo editor nativo do cPanel, nesse caso você precisa ficar atento ao padrão de codificação que o editor irá carregar antes de começar suas alterações. Em resumo, o mais importante é, use sempre a formatação de codificação em UTF-8.

Os problemas de usar ISSO-8859-1

Não que seja um padrão de codificação ruim, mas algumas vezes pode ser trabalhoso fazer as correções e adaptações de arquivos vindos de padrão UTF-8, como por exemplo o uso do código & aacute; para usar um á, isso pode ser muito trabalhoso se você não está disposto a fazer essas mudanças. Esse charset oferece algumas variações, e elas devem ser bem informadas na hora da sua definição, então esse é mais um detalhe que vale ficar atento, por isso nossa maior dica é o uso do charset UTF-8. Além do mais, o ISO-8859-1 acaba gerando arquivos maiores, e você com certeza pensa em reduzir o tamanho dos seus arquivos, não aumentar.

 

Como realizar essas correções de forma rápida?

Existem algumas verificações a serem feitas e elas no geral resolvem completamente os eu problema, listamos cada uma delas e dessa froma basta atualizar seus arquivos para que tudo seja resolvido.

Deixe claro para o seu navegador qual o charset você usa com o PHP:

<?php
header('Content-Type: text/html; charset=UTF-8');
...

ou

<?php
ini_set('default_charset','UTF-8');
...

No caso de arquivos estáticos em HTML5, você também precisa definir seu charset:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" >
...

Verifique se seu banco de dados foi criado no padrão UTF-8, uma dica é criar seus bancos de dados com o padrão utf8_unicode_ci, dessa forma você terá mais facilidade para trabalhar com diferentes idiomas, caso sua aplicação tenha apenas um idioma e precise de um processamento de dados mais rápido, use o padrão utf8_general_ci:

CREATE DATABASE nome_bancodedados CHARACTER SET UTF8;

Você também pode definir seus formulários para exibir a acentuação correta:

...
<form accept-charset="utf-8">
...

Você pode também ler nosso artigo onde ensinamos como criar um formulário de contato em php, mostramos como criar um formulário simples e que você pode implementar sem dificuldades ao seu site, com todas as informações que você precisa para ter mais segurança na hora dos envios e evitar spam de mensagens vindas de usuários mal intencionados.

Uma última dica é sobre uma escolha importante que pode ajudar na sua produtividade, use um framework para o seu desenvolvimento, já demos uma excelente dica de frameworks php que você pode usar, cada um deles atende um publico de desenvolvedores, alguns mais completos e outros mais dinânicos, você pode escolher o que se adequa melhor ao seu estilo de programação e no geral todos eles atendem sem a menor dificuldade o uso de charsets corretamente, já reunimos diversas dicas de produtividade e qualidade de código em nossos artigos, sabemos o quanto é importante manter o padrão de desenvolvimento para qualquer trabalho freelancer.

 

Conclusão

Você viu que não é difícil realizar essa correção, para um problema pequeno que pode trazer um prejuizo grande, se pensarmos que você pode estar perdendo visitas e potenciais clientes com esse detalhe. Seja por não visualizarem o site corretamente ou um contato que chegou a sua caixa de e-mail completamente irreconhecível graças a codificação errada. Fique atento as suas páginas e comece qualquer projeto definindo corretamente o seu charset para UTF-8, seguindo nosso artigo você vai acabar de uma vez por todas com qualquer problema de visualização do seu conteúdo.

Gostou de nosso post? Compartilhe: