Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

albrecht

Cookie

Recommended Posts

Eu sou uma aluna de tecnico em informática e preciso fazer um trabalho, até então tudo certo só que ta dando esse erro:

Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php:6) in c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php on line 7

 

Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php:6) in c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php on line 8

 

Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php:6) in c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php on line 9

 

Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php:6) in c:\arquivos de programas\easyphp1-8\www\site\siteeee\esportiva-7.php on line 10

Não estou conseguindo resolver :x

 

O "Problema":

<html>
<head>
<title>ESPORTIVA</title>
<style type="text/css">
<!--
.style1 {
	font-size: 18px;
	font-weight: bold;
}
-->
</style>
</head>
<body>
<center>
<?php
$rua= $_POST["rua"];
$num= $_POST["num"];
$bairro= $_POST["bai"];
$cidade= $_POST["cid"];
echo $rua;
setCookie("rua",$rua);
setCookie("num",$num);
setCookie("bairro",$bairro); 
setCookie("cidade",$cidade);
?>
<table width="314" border="1">
  <tr>
    <td colspan="3" align="center"><span class="style1"> ESCOLHA O CARTÃO</span></td>
  </tr>
  <tr>
    <td width="97"><img src="../mastercard.jpg" width="97" height="51"></td>
    <td width="97"><img src="../visa.jpg" width="97" height="51"></td>
    <td width="98"><img src="../HIPERCARDLOGO.gif" width="97" height="51"></td>
  </tr>
  <tr>
    <td align="center"> <form name="form1" method="post" action="esportiva-8.php">
      <form action="esportiva-8.php" method="post" name="form">
	  <input name="cartao" type="radio" value="mastercard">
    </td>
    <td align="center"><input name="cartao" type="radio" value="visa"></td>
    <td align="center"><input name="cartao" type="radio" value="hiper"></td>
  </tr><?
  for ($x=1; $x<=3; $x++) {
  	$valor=$_POST["valor".$x];
	$marca=$_POST["marca".$x];
	$opcao=$_POST["opcao".$x];
	?>
	<input type="hidden" name="valor<?php echo $x; ?>" value="<?php echo $valor;?>">
  <input type="hidden" name="marca<?php echo $x; ?>" value="<?php echo $marca;?>">
  <input type="hidden" name="opcao<?php echo $x; ?>" value="<?php echo $opcao;?>">
<?php } ?>
  <tr>
    <td colspan="3"><input name="submit" type="submit" value="CONFIRMAR"></td>
  </tr>
</table>
</form>
</center>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que função é essa "setCookie" ?

 

eu só conheço uma função que tem o nome parecido que é:

 

setcookie ( string $nome [, string $valor [, int $expira [, string $caminho [, string $domínio [, bool $seguro [, bool $somente http ]]]]]] );

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use o nome da função como ela é.

Se é setcookie, use setcookie e não setCookie.

 

E o problema está acontecendo porque há saídas HTML antes do uso da função setcookie(). Isso faz com que os cabeçalhos sejam enviados para o navegador, provocando o erro "cabeçalhos já foram enviados".

 

Uma das soluções para este problema, é ativar o buffer de saida.

 

<?php
ob_start();
?>
<html>
<head>
<title>Minha Página</title>
</head>
<body>

<?php
setcookie();
setcookie();
setcookie();
?>

</body>
</html>
<?php
ob_flush();
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.