Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

UTF8

Bom dia meu DB não reconhece caracteres especiais oq posso estar fazendo?

segue print: https://drive.google.com/open?id=1jWa4ZP_3QjDDMV3QxcZ22cIqrpk4dCvu

6 respostas

Victor, bom dia!

Você pode ir na barra superior do phpmyadmin e ir no menu de operações.

Lá vai ter um card escrito Agrupamento (Collation), altere para latin1_swedish_ci.

Provavelmente os campos já inseridos continuaram com os carácteres estranhos, mas os que você adicionar depois devem funcionar corretamente.

Espero ter ajudado e bons estudos!

Caso você esteja adicionando os dados por programação em PHP, eu recomendaria você fazer o seguinte, utilizar utf8_decode() para gravar no banco e utf8_encode() para recuperar os dados. Desta forma, os acentos são gravados corretamente no banco de dados.

Caso você esteja inserindo manualmente no banco, a dica do collation deve resolver.

Felipe, o meu em operações já está como padrão como

latin1_swedish_ci

Eu inseri manual mente e da certo, porem ao usuario inseir da esse problema, estou utilizando o PHP

Na pagina :

<meta charset="utf8">

Função para inserir

<?php include ("paginacontato2.php") ?>

<?php

function insereProduto($conexao, $descricaobreve, $descricaolonga){
        $query = "insert into paginainicio (descricaobreve,descricaolonga)
        values ('{$descricaobreve}', '{$descricaolonga}')";
        return mysqli_query($conexao, $query);
}


$descricaobreve = $_GET['descricaobreve'];
$descricaolonga = $_GET['descricaolonga'];
$conexao = mysqli_connect('localhost', 'root','', 'vtlcloud');



        if(insereProduto($conexao, $descricaobreve, $descricaolonga)){ ?>
                <p class="alert-success">Informações Salvas. </p>
        <?php } else { 
                $msg = mysqli_error($conexao);
                ?>
                <p class="alert-danger">Preencha os Campos necessarios. : <?= $msg ?></p>
         <?php
        }
solução!

Onde está:

$descricaobreve = $_GET['descricaobreve'];
$descricaolonga = $_GET['descricaolonga'];

Tente fazer:

$descricaobreve = utf8_decode($_GET['descricaobreve']);
$descricaolonga = utf8_decode($_GET['descricaolonga']);

Obrigado Daniel deu certo.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software