2
respostas

Mysql uft-8

Alguns caracteres no banco ao puxar informação a página nao reconhece a acentuação. Como faço para padronizar o banco todo e as tabelas para reconhecer acentos e ç?

2 respostas

Olá, Nicolle.

Tem algumas coisas que você deve fazer pra manter um bom padrão.

Ao criar as tabelas, caso não adicione o charset. Ex.:

CREATE TABLE tabela( ... ) CHARACTER SET=utf8;

Quando se conectar ao banco utilizando PDO, faça o seguinte:

$opcoes = [
    PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8;'
];
$pdo = new PDO('mysql:host=seuhost;dbname=seubanco', 'usuario', 'senha', $opcoes);

No seu HTML, certifique-se que tem a tag

<meta charset="UTF-8">

Após seguir estes passos, conta pra gente se o problema continua...

Recomendo sempre criar o banco de dados seguindo a collation utf8_general_ci.

Em inglês: https://dev.mysql.com/doc/refman/5.7/en/charset-applications.html