Ir para conteúdo
Xevious

Problema na formatação de resultados do banco de dados

Recommended Posts

Tenho dois sites feitos com php, um é em laravel e o outro básico.

E eles usam duas cópias do mesmo banco de dados.

 

Mas um, oq é em Laravel, os acentos dos produtos, que vem do banco de dados, aparecem corretamente.

No php básico não.

 

Este que é em php básico, deixei com o mesmo 'meta' que o que é em Laravel.

Mas não mudou o resultado.

 

<html lang="pt">

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente usar o UTF8 encode para corrigir os acentos, ou dentro do próprio banco ja deixe estabelecido suas tabelas como utf_8_general_ci

veja na documentação

https://www.php.net/manual/pt_BR/function.utf8-encode.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Nightmare SEP
      Estou tendo problemas com acentuação, das informações que estão no banco de dados.
       
      No servidor que está na produção atualmente, rodando uma Intranet, está funcionando normalmente, numa versão mais antiga no XAMPP.
      MySQL: 5.1.41
      PHP: 5.4
      Collation do BD: utf8_general_ci
       
      Segue, como está no banco de dados, e como aparece no HTML.
       
      ---
       
      Porém, formatei o meu computador recentemente, e nele instalei a versão mais atual do XAMPP, com PHP 8.2.
      Criei o bando de dados também com a mesma collation, utf8_general_ci, porém no meu localhost, os acentos aparecem todos zuados.
       
      Uma coisa que percebi, é que no servidor da Intranet, no banco de dados, os acentos ficam zuados, mas no PHP/HTML mostra os acentos corretamente.
      Já no meu computador, os acentos ficam com problema.
       
      É alguma relação com a versão do MySQL? É a Collation errada que estou usando?
       
      Obrigado.

    • Por Nightmare SEP
      Bom dia,
      Estou com problema com acentos no PHPMailer (classe para envio de e-mails). Conforme anexo.
       
      Na configuração do e-mail de destinatário, o nome do destinatário tem acento, quando enviado o e-mail, ao invés de aparecer o nome, aparece aqueles caracteres ali (conforme anexo).
      Acontece o mesmo se eu coloco acentuação no assunto do e-mail.
       
      require("../phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); $mail->IsHTML(true); $mail->CharSet = 'utf-8';  
      Será que pode ser algo no php.ini? Lá eu vi que está marcado o default_charset = 'utf-8'. Ou não tem nada a ver?
       
      EDITANDO:
      Funciona os acentos no corpo do e-mail. Só não funciona no ASSUNTO e no NOME DO DESTINATÁRIO.
       

    • Por ConteudoAnimal.com.br
      Olá Pessoal,

      Alguem pode me ajudar 

      Fiz um formulário em https://www.conteudoanimal.com.br/noticias/assessoria.php que manda os dados para https://www.conteudoanimal.com.br/noticias/adicionar_noticia.php
      E qualquer acentuação é trocada por ?

      Código das páginas:

      Assessoria.php
       
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">
      <html>
      <head>
      <title>Assessoria de Imprensa - Inclusão de Notícias</title>
      <script type="text/javascript" src="../ckeditor/ckeditor.js"></script>
      <script src="sample.js" type="text/javascript"></script>
      <link href="sample.css" rel="stylesheet" type="text/css" />
      <link href="../css/estilos.css" rel="stylesheet" type="text/css" />
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
      <body>
      <div id="geral"><div id="regiao_1"><ul><li id="link_mail"><a href="https://www.conteudoanimal.com.br/faleconosco/inclusao.php">Fale Conosco</a></li><li id="link_faq"><a href="https://www.conteudoanimal.com.br/faq.php">FAQ </a></li><li id="link_indique"><a href="https://www.conteudoanimal.com.br/marketing/banner.php">Anuncie</a></li><li id="link_sitemap"><a href="https://www.conteudoanimal.com.br/marketing/website.php">Como Hospedar</a></li></ul>    </div>
      <div id="regiao_2"><div id="menu_principal"><ul><li id="top"><a href="https://www.conteudoanimal.com.br/default.php" title="P&aacute;gina Inicial">CONTEÚDO ANIMAL</a></li><li id="link_racas"><a href="https://www.conteudoanimal.com.br/info/info.php" title="Ra&ccedil;as &amp; Esp&eacute;cies">RA&Ccedil;AS &amp; ESP&Eacute;CIES</a></li><li id="link_shopping"><a href="https://www.conteudoanimal.com.br/anuncios.php" title="Anúncios" target="new" rel="nofollow">Anúncios</a></li><li id="link_colunas"><a href="https://www.conteudoanimal.com.br/colunas/colunas.php" title="Ver Colunas"> COLUNAS</a></li><li id="link_esportes"><a href="https://www.conteudoanimal.com.br/info/esportes.php" title="Esportes">ESPORTES</a></li><li id="link_noticias"><a href="https://www.conteudoanimal.com.br/noticias/todas.php" title="Not&iacute;cias">NOT&Iacute;CIAS</a></li><li id="bottom"></li></ul></div>
      <div id="box_banner_topo"></div><!-- Fim código do banner topo -->
      <div id="box_pesquisa">
      <!-- SiteSearch Google -->
      <p>Digite aqui a palavra-chave.</p><form action=" https://www.conteudoanimal.com.br/busca.php" id="Form1"><input type="hidden" name="domains" value="www.conteudoanimal.com"><input type="text" name="q" size="20" maxlength="255" id="campo_pesquisa" value=""><br/><input name="sitesearch" type="radio" class="radio" value="" />Web<input name="sitesearch" type="radio" class="radio" value="www.conteudoanimal.com" checked="checked">Conte&uacute;do Animal<input class="bt_pesquisa" type="submit" name="sa" value="Pesquisar">
      <!-- Campos hidden --><input type="hidden" name="cx" value="partner-pub-7589629526688718:vocfdf-73ai" /><input type="hidden" name="forid" value="1" /><input type="hidden" name="ie" value="ISO-8859-1" /><input type="hidden" name="oe" value="ISO-8859-1" /><input type="hidden" name="cof" value="FORID:11" /><input type="hidden" name="hl" value="pt" /></form>
      <script type="text/javascript" src="https://www.google.com.br/coop/cse/brand?form=cse-search-box&lang=pt"></script>
      <!-- SiteSearch Google --></div></div>
      <div id="regiao_7">    
      <!-- Banner do rodapé - 728x15 -->
      </div>
      <div id="regiao_8"> <div id="lado_esquerdo"><ul id="menu_racas"><li id="link_caes"><a href="https://www.conteudoanimal.com.br/info/caes/caes.php">C&atilde;es</a></li><li id="link_gatos"><a href="https://www.conteudoanimal.com.br/info/gatos/gatos.php">Gatos</a></li><li id="link_cavalos"><a href="https://www.conteudoanimal.com.br/info/cavalos/cavalos.php">Cavalos</a></li><li id="link_peixes"><a href="https://www.conteudoanimal.com.br/info/peixes/peixes.php">Peixes</a></li><li id="link_passaros"><a href="https://www.conteudoanimal.com.br/info/passaros/passaros.php">P&aacute;ssaros</a></li><li id="link_outros"><a href="https://www.conteudoanimal.com.br/info/outros/outros.php">Outros</a></li></ul>
      <span class="destaque"><p> </p></span>
      </div>
      <div id="lado_direito">     
      <a href="https://www.conteudoanimal.com.br/"> Home Page </a> &gt; <a href="https://www.conteudoanimal.com.br/noticias/todas.php">Notícias</a> &gt; <a href="#">Assessoria de Notícias</a></p>
      <!-- This <div> holds alert messages to be display in the sample page. -->
      <div id="alerts">
      <noscript>
      <p>
      <strong>CKEditor requires JavaScript to run</strong>. In a browser with no JavaScript
      support, like yours, you should still see the contents (HTML data) and you should
      be able to edit it normally, without a rich editor interface.
      </p>
      </noscript>
      </div>
      </p>
      <!-- Área para os textos - -->        
      <h1>Inclusão de Notícias</h1>
      <!-- Use sempre H5 para o título dos textos -->    
      <p><form action="https://www.conteudoanimal.com.br/noticias/adicionar_noticia.php" method="post">
      <table cellpadding="0" cellspacing="0" border="0" bgcolor="#BEBEBE" style="width: 405px">
      <tr bgcolor="#DEDEDE">
      <td align="right" bgcolor="#DEDEDE" class="style1"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Manchete: * </font></b></td>
      <td align="center" width="347"><input value="Título" type="text" id="manchete" name="manchete" size="30" style="font-family: Verdana; font-size: 8 pt; border-style: solid; border-width: 1; width: 246px;" />
      </td></tr>
      <tr bgcolor="#DEDEDE">
      <td align="right" bgcolor="#DEDEDE" class="style1"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Fonte:*</font></b></td>
      <td align="center" width="347"><input id="fonte" value="fonte da notícia" type="text" name="fonte" size="30" style="font-family: Verdana; font-size: 8 pt; border-style: solid; border-width: 1; width: 253px;" />
      </td></tr>
      <tr bgcolor="#DEDEDE">
      <td align="right" bgcolor="#DEDEDE" valign="top" class="style1"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Texto da Notícia* :</font></b></td>
      <td align="center" width="347">
      <textarea cols="80" id="noticia" name="noticia" rows="20" onclick="return Textarea1_onclick()">Copie o texto da notícia direto neste espaço.</textarea>
      <script>
           // This call can be placed at any point after the
           // <textarea>, or inside a <head><script> in a
           // window.onload event handler.
           // Replace the <textarea id="editor"> with an CKEditor
           // instance, using default configurations.
           CKEDITOR.replace('noticia', {
           filebrowserBrowseUrl: '/externo',
           filebrowserUploadUrl: '/externo',
           filebrowserImageBrowseUrl: '/externo',
           filebrowserImageUploadUrl: '/externo',
           filebrowserWindowWidth: 800,
           filebrowserWindowHeight: 800
      });
      function Textarea1_onclick() {
      }
      </script>
      </td>
      </tr>
      <tr bgcolor="#DEDEDE">
      <td align="center" bgcolor="#DEDEDE" colspan="2"><input type="submit" value="Enviar" name="B1" style="font-family: Verdana; font-size: 8 pt; font-weight: bold; background-color: #FFCC00; border-style: solid; border-width: 1" />
      </tr>
      </table>
      </form>
      </p>
      <p align="center">confiras as últimas 5 notícias publicadas<p>
      <?php
       include '/conexao.php';
       $query = "Select id, manchete from noticias order by id desc limit 0,5";
       $result = mysqli_query($connection,$query) or die ("Could not execute query");
       
       while($row = mysqli_fetch_array($result)) {
       extract($row);
       $rs .= '<h4><img src="/images/bullet.gif" alt="bullet"><a href="/noticias/ver.php?id='.$id.'">'.$manchete.'</a></h4>';
       }
       echo $rs;
      ?>
      <br><br>Você vai adicionar um texto pela primeira vez ? Se SIM . Então veja video tutorial abaixo <br> 
      <iframe width="560" height="315" src="//www.youtube.com/embed/TJ6NH4UGsCs" frameborder="0" allowfullscreen></iframe>
      <!-- FIM da área para os textos --> 
      </div>        
      </div>
      <?php include '/bottom.php'; ?>
      </div>
      </body>
      </html>
       
      Adicionarnoticia.php:

       
    • Por halfar
      É aquele velho problema de caracteres estranhos.
       
      Criei minha base e seu conteudo com utf8, e tudo vinha bem sem nenhum problema.
       
      Fiz um backup da base de dados e tive que formatar a maquina.  Fiz as copias em arquivo.sql.
       
      Depois na hora de importar os dados começaram os problemas, os textos ficaram todos com acentuações erradas.
       
      Já revirei a net em procura da solução, mas nada funcionou.
       
      o meu arquivo sql :
      -- Adminer 4.2.5 MySQL dump SET NAMES utf8; SET time_zone = '+00:00'; SET foreign_key_checks = 0; SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'; DROP TABLE IF EXISTS `relatos`; CREATE TABLE `relatos` (   `id` int(2) NOT NULL AUTO_INCREMENT,   `titulo` varchar(70) NOT NULL,   `relato` text NOT NULL,   `data` date DEFAULT NULL,   `autor` varchar(20) NOT NULL,   PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  
      no banco de dados está como utf8_general_ci.
       
      Na página html está como:
       
       
       
      Peguei um script da net, na hora de se conectar com o banco de dados:
      define('DB_HOST', 'localhost'); define('DB_SCHEMA', 'bdados'); define('DB_USER', 'usuario'); define('DB_PASSWORD', 'senha'); define('DB_ENCODING', 'utf8'); $dsn = 'mysql:host=' . DB_HOST . ';dbname=' . DB_SCHEMA; $options = array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, ); if( version_compare(PHP_VERSION, '5.3.6', '<') ){ if( defined('PDO::MYSQL_ATTR_INIT_COMMAND') ){ $options[PDO::MYSQL_ATTR_INIT_COMMAND] = 'SET NAMES ' . DB_ENCODING; } }else{ $dsn .= ';charset=' . DB_ENCODING; } $conn = @new PDO($dsn, DB_USER, DB_PASSWORD, $options); if( version_compare(PHP_VERSION, '5.3.6', '<') && !defined('PDO::MYSQL_ATTR_INIT_COMMAND') ){ $sql = 'SET NAMES ' . DB_ENCODING; $conn->exec($sql); }  
      Na própria tabela tentei alterar também  um dos campos da tabela para latin1_swedish_ci, mas também não funcionou. Neste caso, em uma outra ocasião, em um provedor tive este tipo de problema e bastou fazer isto e resolveu.
       
      Finalizando, o banco de dados do mysql é do laragon, o maria_db....
    • Por alisonalves
      Boa tarde galera. Procurei algumas soluções no fórum mas não obtive sucesso. Por isto estou pedindo ajuda aqui. Tenho um formulário no meu site mas as palavras acentuadas chegam sempre desconfiguradas. O código que estou usando é este abaixo. Podem me indicar onde estou errando? Desde já agradeço o apoio.
       
      <html lang="pt-br">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      </head>
      <body>
      <?
      $headers = "Content-Type: text/html; charset=UTF-8";
      $mensagem = "Nome: ".$_POST['nome']." \n";
      //email que o usuário preencheu
      $mensagem .= "Email: ".$_POST['email']." \n";
      $mensagem .= "Mensagem: ". $_POST['mensagem'];
      $headers = "";
      //email do seu domínio hospedado
      $emailsender = "contato@exemplo.com.br";
      //email de quem vai receber
      $emaildestinatario = "contato@exemplo.com.br";
      $assunto = "contato pelo site";

      // Envio dos dados do Formulário para seu e-mail:
      if(!mail($emaildestinatario, $assunto, $mensagem, $headers ,"-r".$emailsender))

      // Se for Postfix - hospedagem linux
      $headers .= "Return-Path: " . $emailsender . $quebra_linha; 
      }
      echo '
      <script type="text/JavaScript">
      alert("Seu e-mail foi enviado com sucesso. Obrigado");
      location.href="sucesso.html"
      </script>
      ';
      ?>
      </body> 
      </html>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.