Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Pessoal,
Estou tendo dificuldades para resolver um problema com a chamada do header para o charset UTF-8 no início dos meus scripts.
Localmente o sistema funciona beleza sem nenhum erro. Quando envio para o servidor o sistema me retorna uma mensagem de alerta.
Warning: Cannot modify header information - headers already sent by (output started at /home/virtual311/public_html/site/institucional.php:1) in /home/virtual311/public_html/site/institucional.php on line 2
Esse é meu script:
<?php
header("Content-Type: text/html; charset=UTF-8",true);
?>
Já fiz algumas pesquisas e parece que vários programadores já passaram pelo mesmo problema mais ainda não consegui resolver com as dicas sugeridas.
Se alguém puder ma dar mais uma luz fico grato.
>
Para a função header funcionar corretamente, NÃO pode haver NENHUMA saída (echo, print_r, html, warning, etc) antes dela. Nem mesmo espaços em branco (" "). Por esse motivo, normalmente ela é uma das primeiras instruções a serem executadas.
O que está acontecendo com você, é que existe alguma saída antes dela. Verifique se não há espaços vazios, linhas em branco, ou qualquer outro conteúdo. Verifique também se seu arquivo está no formato "UTF-8 sem BOM" (ou "UTF-8 without BOM").
Como Faço pra verificar se estar no formato UTF-8 sem BOM?
Já verifiquei e não tem nenhum caractere antes do declaração header, nem espaços em branco. Utilizo o editor Notepad++
Dependendo da versão do Notepad++, vai ser uma destas opções:
ou
Se ainda assim não der certo, teste as opções que contenham "UTF-8".
Obs: no rodapé do Notepad++ é exibido a codificação atual do arquivo (conforme o primeiro print-screen)
Show de bola. Funcionou.
Maravilha! :)
Abraço
Para a função header funcionar corretamente, NÃO pode haver NENHUMA saída (echo, print_r, html, warning, etc) antes dela. Nem mesmo espaços em branco (" "). Por esse motivo, normalmente ela é uma das primeiras instruções a serem executadas.
O que está acontecendo com você, é que existe alguma saída antes dela. Verifique se não há espaços vazios, linhas em branco, ou qualquer outro conteúdo. Verifique também se seu arquivo está no formato "UTF-8 sem BOM" (ou "UTF-8 without BOM").