1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Acentuação em PHP

Discussão em 'Web Development' iniciada por spitgohst, 26 de Fevereiro de 2008. (Respostas: 23; Visualizações: 23164)

  1. Boas Pessoal!
    Tenho um problema com os acentos no PHP ^^ na base de dados os campos ficam com a acentuação mas quando vou a po los no site aparecem ? em vez dos caracteres com acentos...por exemplo:

    Frase na db:
    Olá!Um cão roeu o ossão!

    Frase mostrada:
    Ol?!Um c?ao roeu o oss?ao!

    Dizem que aquela cena ta em UTF-8...

    Alguem me pode ajudar?

    Thks:D
     
  2. s31s3r

    s31s3r Power Member

    Código:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    Em princípio mas ainda é preciso ver o tipo de codificação que usas nos ficheiros
     
  3. hasta.g5

    hasta.g5 I quit My Job for Folding

    Acrescenta (ou substitui) no head do teu html o seguinte:
    Código:
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    
    Vê se corrige.
     
  4. Nastase

    Nastase Power Member

    Se não resolver podes sempre tentar usar a função htmlentities do php que te vai converter caracteres não reconhecidos pelo html nos respectivos códigos.

    Exemplo

    Código:
    $string_qq = htmlentities('Olá a todos!');
    
    Espero que te ajude :)
     
  5. ja coloquei a tag <meta> na head do html e tambem ja alterei a codificação dos ficheiros para UTF-8...mas continua a aparecer os ? em vez de aparecerem os acentos :( o mais estranho disto tudo é que quando altero a codificação directamente no Mozilla todas as codificações mostram os acentos menos a codificação UTF-8...no minimo estranho, e eu nao sei mesmo o que fazer :x
     
  6. Gurzi

    Gurzi Power Member

    Boas,

    No início do ficheiro, mas mesmo no início, sem qualquer linha branca antes faz isto
    <?
    header('Content-Type: text/html; charset=ISO-8859-1');
    ?>
     
  7. com isso continua a nao dar :S isto ta um bocado complicado

    Obrigado pela ajuda obrigado a mesma
     
    Última edição: 27 de Fevereiro de 2008
  8. Nastase

    Nastase Power Member

    Já tentaste o htmlentities?
     
  9. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Vê lá se o problema não está no próprio browser.

    De qualquer forma, o que o Nastase está a dizer costuma ser uma "solução universal". O htmlentities().
     
  10. s31s3r

    s31s3r Power Member

    Estás a usar algum editor de texto? Tem atenção que ao guardares o ficheiro .html tens de ver qual o tipo de codificação que usas!

    Se conseguires declara na head utf-8 e guarda o ficheiro codificado com o mesmo formato.
     
  11. Nastase - O htmlentities não me parece ser a solução mais indicada porque tenho que ir buscar os registos a db e ter que tar a fazer isso para todos era um bocado extenso :S

    s31s3r - Estou a usar o Notepad++, já experimentei várias vezes guardar o ficheiro com a codificação UTF-8 e com a tag meta la dentro...mas ele continua a dar problemas :S

    angelofwisdom - o problema não pode ser do browser...e se for eu tenho que o resolver porque tenho que colocar o site online e tem que haver compatibilidade com todos os browsers :S essa é a parte complicada da coisa :X

    Obrigado a todos
     
  12. slack_guy

    slack_guy Power Member

    Se colocasses aqui o código HTML (não é o código PHP) gerado, talvez tivesses respostas mais acertadas.
     
  13. Está ai o código fonte gerado quando abro a página, se quiseres o que eu fiz diz:

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-pt" lang="pt-pt" dir="ltr" >
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <meta name="robots" content="index, follow" />
      <meta name="keywords" content="joomla, Joomla, Comunidade Portuguesa de Joomla, JoomlaPT" />
      <meta name="description" content="Joomla! - Um Motor de Portais Dinâmicos e Sistema de Gestão de Conteúdos" />
      <meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />
      <title>Bee-Sms Contests</title>
      <link href="/bee-sms/templates/yoo_sunblogger/favicon.ico" rel="shortcut icon" type="image/x-icon" />
      <link rel="stylesheet" href="/bee-sms/templates/yoo_sunblogger/css/template.css.php?color=default&amp;styleswitcherFont=1&amp;styleswitcherWidth=0&amp;widthThinPx=780&amp;widthWidePx=940&amp;widthFluidPx=0.9" type="text/css" />
      <link rel="stylesheet" href="/bee-sms/templates/yoo_sunblogger/lib/js/lightbox/css/slimbox.css" type="text/css" />
      <script type="text/javascript" src="/bee-sms/templates/yoo_sunblogger/lib/js/mootools.js.php"></script>
      <script type="text/javascript">
    var YtSettings = { color: 'default', layout: 'left', fontDefault: 'font-medium', widthDefault: 'width-wide', widthThinPx: 780, widthWidePx: 940, widthFluidPx: 0.9, heightToppanel: 320 };
      </script>
      <script type="text/javascript" src="/bee-sms/templates/yoo_sunblogger/lib/js/template.js.php"></script>
    
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    
    <body id="page" class="font-medium width-wide">
    
        
        <div class="wrapper floatholder">
            <div class="wrapper-l">
                <div class="wrapper-r">
                    <div class="wrapper-m">
    
    
                        <div id="header">
                        
                                                    
                            <a href="/bee-sms" title="Home"><span id="logo" class="correct-png"></span></a>
                            
                            <div id="bubble-styleswitcher">
                                <div class="background correct-png">
                                    <div class="ie6wrapper">
                                    
                                                                            <div id="styleswitcher">
                                                                                                                            <a id="switchfontlarge" href="javascript:void(0)" title="Increase font size"></a>
                                            <a id="switchfontmedium" href="javascript:void(0)" title="Default font size"></a>
                                            <a id="switchfontsmall" href="javascript:void(0)" title="Decrease font size"></a>
                                                                                </div>
                                                                        
                                    </div>
                                </div>
                            </div>
                            
                            <div id="bubble-date">
                                <div class="background correct-png">
                                    <div class="ie6wrapper">
                                    
                                                                            <div id="date">
                                            <div class="month">fevereiro</div>
                                            <div class="day">28</div>
                                            <div class="year">2008</div>
                                        </div>
                                                                            
                                    </div>
                                </div>
                            </div>
                            
                            <div id="bubble-search">
                                <div class="background correct-png">
                                    <div class="ie6wrapper">
                                    
                                        
                                        
                                    </div>
                                </div>
                            </div>
                
                            <div id="bubble-header">
                                <div class="background correct-png">
                                    <div class="ie6wrapper">
                        
                                        
    
                                    </div>
                                </div>
                            </div>
    
                                    
                            <div id="menu">
                                <ul class="menu"><li class="level1 item13 first parent active"><a href="http://localhost/bee-sms/" class="level1 item13 first parent active"><span>Home</span></a></li><li class="level1 item14 parent"><a href="/bee-sms/index.php?option=com_content&amp;view=article&amp;id=48&amp;Itemid=51" class="level1 item14 parent"><span>Features</span></a></li><li class="level1 item15"><a href="/bee-sms/index.php?option=com_content&amp;view=article&amp;id=44&amp;Itemid=52" class="level1 item15"><span>Typography</span></a></li><li class="level1 item16 parent"><a href="/bee-sms/index.php?option=com_content&amp;view=article&amp;id=47&amp;Itemid=53" class="level1 item16 parent"><span>Layout</span></a></li><li class="level1 item17 last parent"><a href="/bee-sms/index.php?option=com_content&amp;view=frontpage&amp;Itemid=1" class="level1 item17 last parent"><span>Joomla!</span></a></li></ul>
                            </div>
                            
    
                                            
                        </div>
    
                            
                        <div id="middle">
                            <div class="background withoutleft">
            
                                            
                                <div id="main">
                                    <div id="main_container" class="clearingfix">
            
                                            
                                        <div id="mainmiddle" class="floatbox withoutright">
            
                                                                    
                                            <div id="content">
                                                <div id="content_container" class="clearingfix">
            
                                                            
                                                                                                    <div id="breadcrumb">
                                                        <span class="breadcrumbs pathway">
    <a href="http://localhost/bee-sms/" class="pathway">Home</a> <img src="/bee-sms/templates/yoo_sunblogger/images/arrow.png" alt=""  /> <a href="/bee-sms/index.php?option=com_content&amp;view=article&amp;id=45&amp;Itemid=54" class="pathway">Home</a> <img src="/bee-sms/templates/yoo_sunblogger/images/arrow.png" alt=""  /> Bee-Sms Contests</span>
                                                    </div>
                                                                            
                                                    <div class="floatbox">
                                                        
                                                          
                <a href="http://localhost/bee-sms/index.php?option=com_beesms&view=beesms2&Itemid=149&beesmsid="><img src="components/com_beesms/views/beesms2/tmpl/arrow_back.jpg" align=left></a>
                <a href="http://localhost/bee-sms/index.php?option=com_beesms&view=beesms2&Itemid=149&beesmsid=70"><img src="components/com_beesms/views/beesms2/tmpl/arrow_next.jpg" align=right></a>
             
    
    
    <table border=0 width=500 align=center> 
    <tr>
        <td>
        <div align="center">
            <img class="reflect" src="administrator/components/com_beesms/uploads/BeeSms1080221060206.jpg"></img>
        </div>
        </td>
    </tr>
    <div align="center">
    <tr>
        <td>
            <br>
            <p align=center><font size=6>Envie j� para o 3660!</font>
            </p>
            <br>
            <font size=3>
            <p align=center>
                BEE-FERIAS nome CodPostal [OPT-IN ou OPT-OUT]</font>
            </p>
            <br>
        </td>
    </tr>
        <tr>
            <td>
                <br>
                <b>Caracteristicas:</b> <br>Umas Ferias muito Bonitas        </td>
        </tr>
        <tr>
            <td>
                <br>
                <a href="http://www.sapo.pt" target=_blank>Pagina do Produto</a>
                <br>
            </td>
        </tr>
                  <tr>
                                <td>
                                    <p align=center>O pr�mio � atribuido a cada 2543 mensagens recebidas.</p><br>Nota:Dever� colocar no final da mensagem OPT-IN ou OPT-OUT. Ao colocar OPT-IN est� a autorizar o Telemoveis.com e a SMOBILE a utilizar os seus dados para o informar gratuitamente sobre promo��es futuras. Caso n�o o deseje, deve escrever OPT-OUT.                             </td>
                            </tr>
        </table>
    <a href="http://localhost/bee-sms/index.php?option=com_beesms&view=beesms2&Itemid=149&beesmsid="><img src="components/com_beesms/views/beesms2/tmpl/arrow_back.jpg" align=left></a>
    <a href="http://localhost/bee-sms/index.php?option=com_beesms&view=beesms2&Itemid=149&beesmsid=70"><img src="components/com_beesms/views/beesms2/tmpl/arrow_next.jpg" align=right></a>
    </div>
      
                                                    </div>
            
                                                            
                                                </div>
                                            </div>
            
                                        </div>
        
                                            
                                    </div>
                                </div>
                            
                            </div>
                        </div>
        
                                            
                        <div id="footer">
                                                    Copyright &copy; 2007 YOOtheme
                                            </div>
                        
                        
        
                    </div>
                </div>
            </div>
            
            <div class="wrapper-bl">
                <div class="wrapper-br">
                    <div class="wrapper-b">
                    </div>
                </div>
            </div>
            
        </div>
    
    </body>
    </html>
    Obrigado pela ajuda
     
    Última edição: 28 de Fevereiro de 2008
  14. Armadillo

    Armadillo Folding Member

    Código:
    [COLOR=#ff0000]<?[/COLOR]
    [COLOR=#0000ff]htmlspecialchars[/COLOR][COLOR=#009900]([/COLOR][COLOR=#ff0000]"String"[/COLOR][COLOR=#009900]);[/COLOR]
    [COLOR=#ff0000]?> [/COLOR]
    
     
  15. slack_guy

    slack_guy Power Member

    Please, utiliza as tags [ code ] e [ /code ] (sem espaços, claro) sempre que precisares de colar código.

    Joomla? porque é que não disseste logo?! eu meto a viola no saco, não percebo patavina disso.
     
  16. tudo bem sorry!

    pah mas joomla nao passa de um conjunto de ficheiros de php...e eu tou a fazer um componente...acredito que o que quer que seja que esta a causar os ditos ? nao tenha a ver com o joomla mas sim com um tipo de codificação marada que nem sei bem qual é :x
     
  17. s31s3r

    s31s3r Power Member

    Ah! Joomla! Ok!
    Assim já conversamos de maneira diferente!
    Qual é a versão? 1.0.x ou 1.5?
    Se for a 1.0.x tens de codificar todos os ficheiros em iso-8859-1, na nova usas o utf-8.
    O mesmo se aplica ás headers do html. E quando guardares os ficheiros com o notepad++ não te esqueças de mudar o tipo de codificação.
     
  18. :P é a 1.5...tou a implementar agora o meu primeiro site na nova plataforma apesar de nao haver muitos componentes disponiveis ainda :S mas eu ja tentei isso...coloquei a tal linha de codigo nas headers e guardei tudo em utf-8, mas ainda nao entendi bem o porque daquela cena nao tar a dar...supostamente tenho que por no tag head do html do template nao e?
     
  19. JPBImpe

    JPBImpe What is folding?

    Pah, qual é a codificação que está no mysql? é utf-8 ou iso-8859-1 (também conhecida por latin-1)?
     

Partilhar esta Página