Ir para conteúdo
Fórum Script Brasil
  • 0

Warning: Cannot modify header information - headers already sent by (o


quinhosp

Pergunta

Desnvolvi um sistema de notícias, e rodei no easyphp, tudo funcionou bem. Por'm quando coloquei no servidor apareceu esse erro.

alguém pode me explicar o que esta acontecendo??

Warning: Cannot modify header information - headers already sent by (output started at /home/mid2/public_html/sistemadenoticia/inc/functions.inc.php:412) in /home/mid2/public_html/sistemadenoticia/index.php on line 92

Grato,

quinho

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

SIM!

No meu caso esse código é apenas de uma página de deleção de dados num DB. Em seguida ele deveria retornar à página "visualizar.php"

mas ele dá esse erro...

Eu tive o mesmo problema... " Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\del_vizualizar.php:1) in C:\wamp\www\del_vizualizar.php on line 44"

<?php virtual('/Connections/conexao.php'); ?>
<?php

function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}

if ((isset($_GET['ID'])) && ($_GET['ID'] != "")) {
  $deleteSQL = sprintf("DELETE FROM chamados WHERE ID=%s",
                       GetSQLValueString($_GET['ID'], "int"));

  mysql_select_db($database_conexao, $conexao);
  $Result1 = mysql_query($deleteSQL, $conexao) or die(mysql_error());

  $deleteGoTo = "visualizar.php";
  
  if (isset($_SERVER['QUERY_STRING'])) {
    $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
    $deleteGoTo .= $_SERVER['QUERY_STRING'];
  }

  header(sprintf("Location: %s", $deleteGoTo));
 // header("Location: %s", $deleteGoTo);


}
?>

Já tentei trocar o "header(sprintf("Location: %s", $deleteGoTo));" por "header("Location: %s", $deleteGoTo);". e não deu...

já usei o "ob_start();" logo depois de "<?php" e nada também...

Bom, como faço para fazer o retorno de página... já é o segundo código meu com esse problema e ainda não consegui resolver.alguém sabe como resolver?

obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0
Você não pode colocar um header depois de ter impresso algo na página.

No lugar desses heades, faça o PHP imprimir um javascript que redirecione a página.

Não é bonito, mas é a melhor opção.

Hum... cara eu tentei...

troquei o header por

echo "<script> <!-- window.location = $deleteGoTo; //--> </script>";

tá certo? porque o erro sumiu, mas não redireciona não...

Se puder me ajudar novamente agradeço... :rolleyes:

Você não pode colocar um header depois de ter impresso algo na página.

No lugar desses heades, faça o PHP imprimir um javascript que redirecione a página.

Não é bonito, mas é a melhor opção.

Bom eu consegui o redirecionamento fazendo o java script entre os <BODY> q seria o normal né.. rsrs

aí consegui redirecionar...

Mas dentro do codigo do PHP... como se faz? ou o q eu to dizendo tá tudo errado...? kkkk :wacko:

Editado por MLeandroJr!
Link para o comentário
Compartilhar em outros sites

  • 0

Para quem ainda precisa de ajuda... resolvi da seginte maneira,

procure por header(sprintf("Location: %s", $seucomando));

depois retire o header()

ficara assim

sprintf("Location: %s", $deleteGoTo);

Não sei dizer se essa é a forma correta porem pra mim funcionou

Um abraço a todos!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...