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 ç?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
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 ç?
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