Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Desenvolvi o sistema usando o wamp-server e quando fui insta-lo em um servidor com xampp ele me retornou o seguinte erro:
Warning: Cannot modify header information - headers already sent by
Alguém saberia como me ajudar?
Shini cara artigo muito bom esse só que tem um pequeno probleminha eu não fiz isso, vc pediu o código do erro completo, segui ele.
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\mxm_BRASERV\views\equipamento\tipo\main_tipo.php:72) in C:\xampp\htdocs\mxm_BRASERV\views\equipamento\tipo\main_tipo.php on line 237
E apenas para mostrar isso, vou postar as linhas que ele ta dando problema:
<option value="sim"
<?php
if (isset($_GET['excluido']) == true) {
if ($_GET['excluido'] == "sim") {
?>
selected = "select"
<?php
}
}
?>
>Sim</option>
Cara e para completar eu fiz isso em inúmeras outras partes do programa e só nessa que o xampp ta reclamando. É só um código para o combo box voltar selecionado após a pesquisa de campos via get. ele da o erro quando eu abro a tag php
o encode do arquivo esta como? tente deixar ele como utf-8 without BOM.
o link do stackoverflow vc viu tbm?
Quando fiz a paginação das janelas do sistema meio que a metade do sistema já esta pronto e para a minha lógica de paginação funcionar eu preciso ter janela.php?pag=1, como boa parte do sistema já estava pronto eu coloquei para caso eu estive-se mandando para janela.php eu redireciona-se o usuário para janela.php?pag=1 mesmo colocando este artificio na classe que faz a páginação ainda assim fiz um refactory no meu código para todos os liks e headers que eu manda-se para as páginas que listam arquivos eu já manda-se com um pagina.php?pag=1.
Só que no xampp por alguma causa razão o circunstancia não deixa o arquivo que eu mandei abrir ser imediatamente redirecionado. Notei isso olhando para a página de erro notei que não estava mostrando na url o ?pag=1 quando coloquei o ?pag=1 e dei enter a coisa funcionou a bastou com que sempre chama-se a página com um ?pag=1 que tudo funciona.
Vlw a forma ai shini.
Fui testar todo o sistema e descobri que este erro também esta acontecendo em outras partes.
Ta dando erro quando eu mando redirecionar para as mensagem de confirmação como " os dados foram atualizados com sucesso e etc" o que poderia ser?
Você tem impressão de tela antes de enviar os cabeçalhos ( header, session, etc...).
Uma solução seria utilizar ob_start (Esta função irá ativar o buffer de saída. Enquanto o buffer de saída estiver ativo, não é enviada a saída do script (outros que não sejam cabeçalhos) no início do script, ao invés a saída é guardada em um buffer interno.).
A outra é, remover todas as impressões de tela antes de enviar os cabeçalhos.
Carlos Coelho realmente passa a impressão de que estou enviando mensagens antes de lidar com as session's só que eu não to mandando cara e isso só ta acontecendo no xampp do servidor, para resolver os erros troquei todos os headers do sistema pelo location.href do javascript e o problema se resolve, sempre são marcadas duas linhas do erro a primeira é quando eu mando da uma mensagem e a segunda é sempre em um header do php se eu o trocar pelo location.href do javascript a coisa funciona perfeitamente, além disso tive alguns problemas com browsers antigos, mas após umas 10 horas dando refactory por todo o sistema a coisa ta funcionando.
Vlw a força ai caras :yes: (Só espero que não tenha deixado passar nenhum detalhe srsrsr).
depois do by não tem o nome do arquivo?
geralmente isso é uma saida de texto(espaço, BOM, html)
http://blog.thiagobelem.net/resolvendo-o-problema-de-headers-already-sent/
http://stackoverflow.com/questions/8028957/headers-already-sent-by-php