kikinha 0 Denunciar post Postado Fevereiro 28, 2004 ^_^ Boa tarde Estou enfrentando um erro utilizando o comando Header (), alguém poderia me ajudar? É o seguinte... O código é: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { header( "$siteurl/join.php?update" ); } (...) Quando envio o formulário e cai na ação blabla (nome fictício hehe), aparece o erro Warning: Cannot modify header information - headers already sent by (output started at /home/blabla/header.inc:8) in /home/blabla/join.php on line 846. A linha 846 é o comando header. Não há nenhum comando html, espaço em branco, palavra, sendo enviada antes do header, então qual pode ser o problema que está originando esse erro? Abraço e obrigado Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Fevereiro 28, 2004 será q eu não fui muito clara... acho que sou ansiosa d+ hehe :huh: Compartilhar este post Link para o post Compartilhar em outros sites
_r4nk4_ 0 Denunciar post Postado Fevereiro 28, 2004 Ola, A função header() deve ser declarada antes de qualquer tag HTML, da uma olhado no código pode ser esse o problema... ex: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { header( "$siteurl/join.php?update" ); } <html> <head></head> <body></body> </html> :D Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Fevereiro 28, 2004 Ola, A função header() deve ser declarada antes de qualquer tag HTML, da uma olhado no código pode ser esse o problema... ex: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { header( "$siteurl/join.php?update" ); } <html> <head></head> <body></body> </html> :D Oie, muito obrigado pela resposta _r4nk4_ Como eu disse, não tem nenhum comando html antes do header... Dentro do "then" do if só tem mesmo o comando header... Ou seja ele está sendo enviado sozinho ... Depois só tem o else do if, acredito que se está enviando o header, ou seja, está satisfazendo uma das opções do if (true), o else naum estará sendo executado ... Não tenho idéia do que pode ser esse erro :/ Abraço Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Fevereiro 29, 2004 o erro eh de algo q enviou mesmo.. cole o comeco do codigo, e se nao for mto grande, ele inteiiro... obs: se o arquivo estiver assim <?php header("location...");...?>jah ira dar erro, pq ele interpreta o comeco como envio dum espaço em branco... []s Olá krisiun, obrigado pela resposta ^_^ O começo do código faz algum sentido no caso? Pois se o header está chamando uma ação dentro de uma página, o que interessa é o que está dentro da ação não seria? Que no caso é a partir do update e talz. E mais as duas primeiras linhas da página q naum estão dentro de nenhuma ação... O começo da página <? include("config.php"); include("$header"); if (!$action) { ?> (...) daí abaixo é o código que será executado qdo naum estiver sendo setada nenhuma ação o código da ação que é "chamada" no header começa assim }elseif ($action == "update"){ ?> <p align="left"><img src="titulo_atualizar.gif"></p> (...) E é isso, mas antes mesmo do header não tem nenhum comando html sendo enviado, nem sendo executado, como dá pra perceber através do código q ta dando erro, na linha do header: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { header( "$siteurl/join.php?update" ); } Porque o que vale nesse caso, por ser um if, é só o q está dentro do parênteses? Que funciona como "begin" "end" do então e do senão do if, não é? Abraço Compartilhar este post Link para o post Compartilhar em outros sites
John Doe 0 Denunciar post Postado Fevereiro 29, 2004 Uma vez aconteceu isso comigo...Eu fiz o seguinte: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { echo "<script language=\"Jscript\">window.location = '$siteurl/join.php?update';</script>"; } ?> Foi o jeito hheeheh.... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Fevereiro 29, 2004 Obrigado John Doe pela resposta, quando tentei com o javascript, a página apareceu em branco :// Vai entenderAbraço Compartilhar este post Link para o post Compartilhar em outros sites
Keitaro 0 Denunciar post Postado Fevereiro 29, 2004 }elseif ($action == "update"){ ?><p align="left"><img src="titulo_atualizar.gif"></p>(...)aqui, ao inves de abrir e fechar o PHP, use echo para imprimir o resultado, isso deve estar sendo considerado como um codigo executado e enviado, por isso esta dando erro, para usar header, sempre coloque acima de tudo Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Fevereiro 29, 2004 }elseif ($action == "update"){ ?> <p align="left"><img src="titulo_atualizar.gif"></p> (...) aqui, ao inves de abrir e fechar o PHP, use echo para imprimir o resultado, isso deve estar sendo considerado como um codigo executado e enviado, por isso esta dando erro, para usar header, sempre coloque acima de tudo Obrigado Keitaro pela resposta... Mas quanto a isso não tem problema não, porque o header está indo antes desse comando ... Veja: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST) || !isset($_POST[country])) { header( "$siteurl/join.php?update" ); } Se acaso as variáveis não forem iniciadas, vai para o "então do if" que é o comando header, esse, abre o join.php na ação update, somente então, abre-se o p align e talz .... }elseif ($action == "update"){ ?> <p align="left"><img src="titulo_atualizar.gif"></p> (...) Resumindo, o comando header está indo antes do html. O erro com o header desapareceu, mas eu ainda não descobri o problema que estava dando. Eu copiei um código do mesmo sisteminha que estava rodando legal, e substituí o conteúdo... Mas aparentemente está tudo igual, o problema deve ser mesmo algum espaço em branco passado desapercebido, ou sei lá. Um grande abraço a todos que me ajudaram, respondendo a minha pergunta aqui no fórum! Tenham um bom domingo! Compartilhar este post Link para o post Compartilhar em outros sites
webvp 0 Denunciar post Postado Março 1, 2004 Apenas acrescente o location no header, caso contrário como ele irá saber para onde deve se deslocar? Seu código <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST[email]) || !isset($_POST[country])) {header( "$siteurl/join.php?update" );} altere para: <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST[email]) || !isset($_POST[country])) {header("Location:$siteurl/join.php?update");} fui.. dúvidas mail-me webvp Compartilhar este post Link para o post Compartilhar em outros sites
kikinha 0 Denunciar post Postado Março 2, 2004 Apenas acrescente o location no header, caso contrário como ele irá saber para onde deve se deslocar?Seu código <? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST[email]) || !isset($_POST[country])) {header( "$siteurl/join.php?update" );}altere para:<? } elseif ($action == "blabla"){ if (!isset($_POST[name]) || !isset($_POST[email]) || !isset($_POST[country])) {header("Location:$siteurl/join.php?update");}fui..dúvidas mail-mewebvp Olá webvpMuito obrigado pela resposta, como tinha respondido na msg anterior que enviei, consegui resolver o problema... Ele redireciona direitinho, sem o Location, quando necessário, X)Abraço Compartilhar este post Link para o post Compartilhar em outros sites