Jump to content

Recommended Posts

Posted

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?
Posted (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 by MASNathan
Posted

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%.

Posted (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 by ricardom94
Posted

 </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%.

Posted

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?

Posted

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.

  • Vote 1

"[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%.

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.