Jump to content


Photo

Cannot Modify Header Information - Headers Already Sent By


  • Faça o login para participar
3 replies to this topic

#1 rafael50

rafael50

    Novato no fórum

  • Usuários
  • 20 posts
  • Sexo:Não informado

Posted 19/12/2010, 20:00

estou tentando fazer aquel eesquema de fazer o download de um arquivo automaticamente !
mas nao estou conseguindo, está dando o famoso erro no cabeçalho, mas nao sei o pq, o arquivo contem apenas esse codigo:

<?php 
		header("Content-Type: jpg"); // informa o tipo do arquivo ao navegador
		header("Content-Length: ".filesize($_GET["arquivo"])); // informa o tamanho do arquivo ao navegador
		header("Content-Disposition: attachment; filename=".basename($_GET["arquivo"])); // informa ao navegador que é tipo anexo e faz abrir a janela de download, tambem informa o nome do arquivo
		readfile($_GET["arquivo"]); // lê o arquivo
		exit; // aborta pós-ações
	?>


Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 3

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 4


valeuu !

#2 KILLME

KILLME

    Normal

  • Usuários
  • 117 posts
  • Sexo:Não informado
  • Localidade:Caraguatatuba-SP

Posted 20/12/2010, 14:48

estou tentando fazer aquel eesquema de fazer o download de um arquivo automaticamente !
mas nao estou conseguindo, está dando o famoso erro no cabeçalho, mas nao sei o pq, o arquivo contem apenas esse codigo:

<?php 
		header("Content-Type: jpg"); // informa o tipo do arquivo ao navegador
		header("Content-Length: ".filesize($_GET["arquivo"])); // informa o tamanho do arquivo ao navegador
		header("Content-Disposition: attachment; filename=".basename($_GET["arquivo"])); // informa ao navegador que é tipo anexo e faz abrir a janela de download, tambem informa o nome do arquivo
		readfile($_GET["arquivo"]); // lê o arquivo
		exit; // aborta pós-ações
	?>


Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 3

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\flash\download.php:1) in C:\AppServ\www\flash\download.php on line 4


valeuu !


Tem alguma coisa, espaço ou texto sendo enviados antes do Header, por isto acontece isto.
http://www.liveworks.com.br : Soluções para internet
http://www.phpmysqljquery.com.br : PHP, MySQL e jQuery
http://www.passoapasso.info : Minhas dicas

#3 rsantos

rsantos

    Turista

  • Usuários
  • 54 posts
  • Sexo:Masculino

Posted 20/12/2010, 15:06

Coloque
ob_start();

No início do seu código, na primeira linha.

#4 Stormbringer

Stormbringer

    I'd love to stay with you all

  • Ex-Admins
  • 2927 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO
  • Interesses:Atualmente: pesquisa e desenvolvimento de web-games

Posted 21/12/2010, 15:30

Coloque

ob_start();

No início do seu código, na primeira linha.

isso resolve, mas é gambiarra...



o correto é eliminar o causador do problema... nesse caso deve ser qualquer espaço, enter, carriage return, tab antes da primeira tag <?

elimine quaisquer coisas que estejam antes da sua primeira <? que resolve o problema sem precisar apelar :D

๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq