ricardom94 Posted May 31, 2012 at 10:34 AM Report #459384 Posted May 31, 2012 at 10:34 AM Boas Eu estou a fazer um site para um projecto da escola e estou com um erro que não consigo perceber... Eu tenho uma pagina php com um form html, onde o utilizador insere um código e carrega num botão e eu vou comparar o código com um campo da base de dados e se for igual altero o mesmo, isto funciona tudo o que não esta a funcionar e quando tento redireccionar o utilizador para outra pagina depois disto tudo... Dame este erro: Citação Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\rcmpap\activ.php:129) in C:\xampp\htdocs\rcmpap\activ.php on line 170 O meu código e este: (html) <?php <--linha 129 @session_start(); include 'config.php'; if(!isset($_POST['join'])){ ?> (+ html) <?php }else{ $estado=$_POST['cod']; $sql="SELECT * FROM utilizadores WHERE estado='$estado'"; $result=mysql_query($sql) or die(mysql_error()); $count=mysql_num_rows($result); if($count==1){ $registo=mysql_fetch_array($result); $id=$registo["idut"]; $sql1="UPDATE utilizadores SET estado='activo' WHERE idut='$id'"; $result1=mysql_query($sql1); header('Content-Type: text/html; charset=iso-8859-1; location: index.php'); <-- linha 170 } else { echo "Codigo Errado <a href=activ.php>Tenta de novo</a>"; } } ?> Alguma ideia?
MASNathan Posted May 31, 2012 at 10:45 AM Report #459396 Posted May 31, 2012 at 10:45 AM (edited) Olá, experimenta substituir esta linha: header('Content-Type: text/html; charset=iso-8859-1; location: index.php'); <-- linha 170 por esta: echo '<script> window.location = "index.php" </script>'; Edited May 31, 2012 at 10:45 AM by MASNathan
ricardom94 Posted May 31, 2012 at 10:50 AM Author Report #459400 Posted May 31, 2012 at 10:50 AM Funciona perfeitamente, obrigado Ja agora nao sabes porque e que dava erro? Eu uso o mesmo metodo em outras paginas e nunca aconteceu isto...
brunoais Posted May 31, 2012 at 10:55 AM Report #459407 Posted May 31, 2012 at 10:55 AM Funciona perfeitamente, obrigado Ja agora nao sabes porque e que dava erro? Eu uso o mesmo metodo em outras paginas e nunca aconteceu isto... Já existe output algures que está a fazer com que os headers sejam enviados. O que é que tens antes da linha 129 (mostra, pelo menos, 15 linhas)? Já agora, não vou dizer muita coisa porque isto é para um trabalho escolar mas o método usado para fazer o trabalho de redirecionar está mal feito, ele exige que o javascript esteja ligado. Tem atenção a isso! "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
MASNathan Posted May 31, 2012 at 10:56 AM Report #459408 Posted May 31, 2012 at 10:56 AM esse é um mistério ao qual eu não tenho resposta...
ricardom94 Posted May 31, 2012 at 11:00 AM Author Report #459411 Posted May 31, 2012 at 11:00 AM (edited) </div> </div> </div> </div> </div> </header> <!-- content --> <section id="content"> <div class="container_24"> <div class="wrapper"> <div class="grid_14"> <div class="suffix_1"> <h2>Activar Conta</h2> O codigo da pagina eu mostrei tudo o resto e html do template... Isto ja nao usa os "topic solved" ? xD Edited May 31, 2012 at 11:01 AM by ricardom94
brunoais Posted May 31, 2012 at 11:05 AM Report #459417 Posted May 31, 2012 at 11:05 AM </div> </div> </div> </div> </div> </header> <!-- content --> <section id="content"> <div class="container_24"> <div class="wrapper"> <div class="grid_14"> <div class="suffix_1"> <h2>Activar Conta</h2> O codigo da pagina eu mostrei tudo o resto e html do template... pois... Isso é output. O uso da função header() tem que ser antes de qualquer output, não importa o quê. Tem que ser também antes do BOM, se existir. Não podes enviar, nem um bit ao browser e depois chamar a função header(). Isto ja nao usa os "topic solved" ? xD Usa mas há um problema com as permissões, por enquanto só os moderadores podem fazer isso. "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
ricardom94 Posted May 31, 2012 at 11:08 AM Author Report #459419 Posted May 31, 2012 at 11:08 AM hum ok, obrigado pela explicaçao Topic solved xD
dash Posted May 31, 2012 at 12:16 PM Report #459441 Posted May 31, 2012 at 12:16 PM Já agora, não vou dizer muita coisa porque isto é para um trabalho escolar mas o método usado para fazer o trabalho de redirecionar está mal feito, ele exige que o javascript esteja ligado. Tem atenção a isso! Desculpem reciclar o tópico, mas podes aconselhar o que farias de forma diferente, Bruno?
brunoais Posted May 31, 2012 at 12:37 PM Report #459445 Posted May 31, 2012 at 12:37 PM Assim por alto (n tenho o código todo), movia esse if todo que contém a query SQL para o topo da página. Se precisasse de algo extra para mais em baixo gravo numa variável. Mas depende muito da situação específica. 1 Report "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now