Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Caracteres acentuados na tabela mySQL


Eu experimentei esse mesmo problema antes, e o que eu fiz é o seguinte

1) Use o notepad++ (pode quase se adaptar em qualquer codificação) ou eclipse e certifique-se de salvar ou abri-lo em UTF-8 sem BOM .

2) defina a codificação no cabeçalho PHP, usando header('Content-type: text/html; charset=UTF-8');

3) remova quaisquer espaços extras no início e no final dos meus arquivos PHP.

4) defina toda a minha codificação de tabela e colunas para utf8mb4_general_ci ou utf8mb4_unicode_ci via PhpMyAdmin ou qualquer cliente mySQL que você tenha. Uma comparação das duas codificações está disponível aqui

5) defina o charset de conexão do mysql para UTF-8 (eu uso PDO para minha conexão de banco de dados)
  PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
  PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET utf8"

ou apenas execute as consultas SQL antes de buscar qualquer dado

6) use uma metatag <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

7) use um determinado código de idioma para francês<meta http-equiv="Content-language" content="fr" />

8) altere o atributo lang do elemento html para o idioma desejado
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">

e estarei atualizando isso mais porque eu realmente tive dificuldade em resolver esse problema antes porque eu estava lidando com caracteres japoneses em meus projetos anteriores

9) Algumas fontes não estão disponíveis no PC cliente, você precisa usar as Google fonts para incluí-lo em seu CSS

10) Não termine seu arquivo de origem PHP com ?>

OBSERVAÇÃO:

mas se tudo o que eu disse acima não funcionar, tente ajustar sua codificação dependendo do conjunto de caracteres que você realmente deseja exibir, para mim eu configurei tudo para SHIFT-JIS para exibir todos os meus caracteres japoneses e realmente funciona bem. Mas usando o UFT-8 deve ser sua prioridade