Jump to content

Erro headers already sent by


Recommended Posts

Posted

include "acesso.php";

if ( $contagem == 1 ) {

header("Location: menu.php");

Mas ele tá me a dar este erro:

Warning: Cannot modify header information - headers already sent by (output started at /home/site/public_html/site/index.php:6) in /home/site/public_html/site/login.php on line 5

É nesta linha -> header("Location: menu.php");

Alguem me poderá dizer o porque?

Posted

provávelmente porque o acesso.php está a mandar qq coisa para o cliente 😛

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Posted

provávelmente porque o acesso.php está a mandar qq coisa para o cliente 😛

Tenho isto no acesso.php :

$login = $HTTP_COOKIE_VARS["login"]; //pega o cookie login, gravado anteriormente com o login

$conexao  = mysql_connect (localhost, $usuario, $password); //conecta ao mysql

$basedados = mysql_select_db($dbname); //seleciona a base de dados

$confirmacao = mysql_query("SELECT * FROM `tabela` WHERE login = '$login' ", $conexao);

$contagem = mysql_num_rows($confirmacao);

Posted

o erro tá no localhost. tens q por o localhost entre " " 😄

btw, era boa ideia mudares de $HTTP_COOKIE_VARS para $_COOKIE 😛

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Posted

o erro tá no localhost. tens q por o localhost entre " " 😄

btw, era boa ideia mudares de $HTTP_COOKIE_VARS para $_COOKIE 😛

Já fiz

$conexao  = mysql_connect ("localhost", $usuario, $password);

O erro continua a dar, estralho é que no meu localhost funciona diretito mas quando passo para o servidor dá me erro

Warning: Cannot modify header information - headers already sent by (output started at /home/site/public_html/site/index.php:6) in /home/site/public_html/site/login.php on line 5

Posted

experimenta mudar o localhost para o nome do host do server mysql 😛

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Posted

ou então:

$conexao   = @mysql_connect (localhost, $usuario, $password); //conecta ao mysql
$basedados = @mysql_select_db($dbname); //seleciona a base de dados
$confirmacao = @mysql_query("SELECT * FROM `tabela` WHERE login = '$login' ", $conexao);
$contagem = @mysql_num_rows($confirmacao);

EDIT: dsclp n ter editado o post anterior em vez de postar este z.z

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Posted

Será que estás a usar código PHP para redireccionar uma página?

Quando fazes um header("Location: menu.php"); ele vai para a página menu.php

Como supostamente já definiste o header da página ele diz que já está definido.

Tenta colocar esse código no início da página.

Posted

Atenção que não podes usar o header se já tiveres algum código código non-php enviado 😛

Um simples espaço antes do <?php faz toda a diferença 😄

Agora isso pode estar a acontecer no file principal ou no include 🙂

Posted

em vez de utilizares a funcão header()  utiliza window.location do javascript

<script language="JavaScript"> 
<!-- window.location="menu.php"; //--> 
</script>

😛

EDIT: ou então a função  ob_flush(); do PHP 😄

Posted

Como supostamente já definiste o header da página ele diz que já está definido.

Tenta colocar esse código no início da página.

Como assim?

código non-php enviado ? Podias-me explicar melhor sff que não percebi esta parte...

Como aplico o javascript aqui ?

include "acesso.php";

if ( $contagem == 1 ) {

header("Location: menu.php");

  } else {

echo"Não está ligado";

}

Posted

<?

include "acesso.php";

if ( $contagem == 1 ) {  ?>

<script language="JavaScript">window.location="menu.php";</script>

<?  //header("Location: menu.php");

} else {

    echo "Você não está logado.";

  ?>

Eu fiz assim funcionou já dá só não percebi onde estava o erro... Gostava de saber porque...

Posted

e por causa do header("location: balala");

algumas das vezes quando fazes o include, ele vai fazer comflito com os redir's.

Proud LEIC-A@IST student!

Posted

<?

include "acesso.php";

if ( $contagem == 1 ) {  ?>

<script language="JavaScript">window.location="menu.php";</script>

<?  //header("Location: menu.php");

} else {

    echo "Você não está logado.";

  ?>

Eu fiz assim funcionou já dá só não percebi onde estava o erro... Gostava de saber porque...

<?php
include "acesso.php";

if ( $contagem == 1 ) {  ?>
<script language="JavaScript">window.location="menu.php";</script><?
} else {
    echo "Você não está logado."; 
}
  ?>

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.