Ir para conteúdo

POWERED BY:

Arquivado

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

look4game

Erro com Cookies

Recommended Posts

Olá!

 

Antes demais gostaria de vos felicitar pelo excelente forum que aqui têm. Muitos parabéns! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Estou de momento com um problema. Tenho uma página em PHP, de uma loja virtual, em que o utilizador navega com cookies. tenho um código no fonte.php (ficheiro principal com conexões à BD, etc...) que seta os cookies:

 

PHP [/tr][tr]//--------------> Inicio das sessões.

session_start();

session_register("SESSION");

 

//--------------> Iniciar sessão se necessário.

if (! isset($SESSION)) {

$SESSION = array();

}

 

//--------------> Iniciar o Carrinho de Compras

if (! isset($SESSION["carrinho"])) {

$SESSION["carrinho"] = new Carrinho;

}

[/tr]

 

... e tentei adicionar um popup a um página (onde tenho de fazer o include do fonte.php), no entanto obtenho o seguinte erro:

 

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/vfusion/public_html/loja/loja/specs_popup.php:1) in /home/vfusion/public_html/loja/fonte.php on line 40

 

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/vfusion/public_html/loja/loja/specs_popup.php:1) in /home/vfusion/public_html/loja/fonte.php on line 40

Só me acontece neste popup já que nas outras páginas tudo corre normalmente. Suponho que seja por ser popup... alguém me poderia ajudar?

 

Agradeço desde já qualquer ajuda disponibilizada ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra resolver o problema dos Warning coloca no começo do código:

PHP [/tr][tr]ob_start();[/tr]

Deve resolver!!!!

 

Flwwwwwwwwwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado michelsp. Embora nºao tenha resolvido, fez-me encontrar a origem do problema. Afinal não tem nada a ver com os cookies, mas sim com esta pequena função java script:

 

PHP [/tr][tr]<script TYPE="text/javascript">

<!--

window.focus();

//-->

</SCRIPT>

 

<?

 

include("../fonte.php");

[/tr]

 

Estava um pouco desatento :wacko: Já passei para baixo e ficou resolvido ;) Obrigado pela ajuda ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já agora, estou aqui com um erro noutra parte de um javascript, pode ser que me consigam ajudar. O problema é o seguinte. Quando se adiciona um produto ao carrinho de compra, ele aparece lá, podendo alterar a quantidade de 1 para 20 por exemplo. Depois tenho um botão para fazer de novo o calculo do total (20 x o preço do produto seguindo o exemplo). Ele devia funcionar bem, no entanto tem praqui algum erro (não sei qual pois não aparece nenhum debug).

 

PHP [/tr][tr]<?

 

include("../fonte.php");

 

if (isset($func)) {

switch ($func) {

case "remover" :

$SESSION["carrinho"]->remover($id);

break;

 

case "recalcular" :

actualizar_qtd($HTTP_POST_VARS);

break;

}

 

$SESSION["carrinho"]->limpar();

$SESSION["carrinho"]->calcular_total();

}

 

$qid = items_carrinho();

 

include("$CFG->dir_includes/topo.php");

 

?>

<script language="Javascript">

function frmsubmit(func) {

frm = document.entryform;

frm.func.value = func;

frm.submit();

}

</script>

<?

echo "

 

<form name='Carrinho' method='post' action='$EU'>

<input type='hidden' name='func' value=''>

 

<table class='Tabela' cellSpacing='2' cellpadding='2' width='100%' align='center' border='0'>

<tr bgcolor='#ffffff'>

<th height='20' width='20'><div align='center'></div></th>

<th width='40'><div align='center'>Ref # </div></th>

<th><div align='center'>Produto</div></th>

<th width='60'><div align='center'>Preço</div></th>

<th width='40'><div align='center'>Qtd</div></th>

<th width='60'><div align='center'>Total</div></th>

</tr>"

;

 

while ($prod = db_fetch_object($qid)) {

$quantidade = $SESSION["carrinho"]->items[$prod->id];

$total = $prod->preco * $quantidade;

 

echo "

 

<tr bgcolor='#eeeeee'>

<input type='hidden' name='id[]' value='$prod->id'>

<td><div align='center'><a title='Eliminar Produto' href='$EU?func=remover&id=$prod->id'><img src='$CFG->dir_imagens/Layout/Loja/Carrinho/Eliminar.gif' width='18' height='18' border='0'></div></a></td>

<td><div align='center'>A0001</div></td>

<td> $prod->nome</td>

<td><div align='center'>€ $prod->preco</div></td>

<td><div align='center'><input type='text' size='3' name='qtd[]' value='$quantidade'></div></td>

<td><div align='center'>€ ";

printf("%.2f", $total);

echo "

</div></td>

</tr>";

 

 

}

 

echo "

 

<tr bgcolor='#eeeeee'>

<td height='20' colspan='5'> </td>

<td><div align='center'><strong>€ ";

printf("%.2f", $SESSION["carrinho"]->total);

echo "

</strong></div></td>

</tr>

<tr>

<td colspan='6' height='20'>"; ?>

<li><a href="java script: frmsubmit('recalcular');">Actualizar Quantidades</a>

<? echo "</td>

</tr>

<tr>

<td colspan='6' height='30'><div align='center'>

<a href='$CFG->www_base'><img src='$CFG->dir_imagens/Layout/Loja/Carrinho/Voltar.gif' width='150' height='30' border='0'></a>

<a href='comprar.php'><img src='$CFG->dir_imagens/Layout/Loja/Carrinho/Finalizar.gif' width='149' height='30' border='0'></a>

</div></td>

</tr>

</table>

 

</form>";

 

 

include("$CFG->dir_includes/fundo.php");

 

 

function actualizar_qtd(&$form) {

 

global $SESSION;

 

foreach ($form["id"] as $i => $idproduto) {

$quantidade = $form["qtd"][$i];

$SESSION["carrinho"]->set($idproduto, $quantidade);

}

}

 

?>

[/tr]

 

Agradeço a vossa ajuda ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mutante_Power_B, já resolvi esse problema como mencionei acima. Estou é com um novo problema, que coloquei no post acima do teu. Será que me consegues ajudar?Obrigado ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

MUTANTE_POWER_B, já tentei encontrar a razão deste erro, mas não faço mesmo ideia do que poderei fazer já que deve ser algo mesmo mínimo. Podes-me ajudar sff?

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.