Viva pessoal, elaborei o seguinte carrinho de compras mas estou com os seguintes problemas , cada vez que dou um refresh de pagina ele me incrementa uma quantidade ao ultimo produto inserido tem como me ajudar ?
Ai vai o codigo...
<link href="css/css.css" rel="stylesheet" type="text/css" />
<link href="css/style.css" rel="stylesheet" type="text/css" />
<?php
// instaciia a pagina de origem
$pag ='resumo.php';
class shopping{
// conectar ao database
function conexao(){
include('admin/include/conect.php');
}
// mostrar carrinho de compras
function carrinho(){
// verificar se existe sessão
if ($_SESSION){
// separar nome de quantidades ou valores
foreach ($_SESSION as $nome => $quantidade){
//igualar uma variavel a session
// verificar se a quantidade é 0
if($quantidade > 0){
if(substr($nome,0,9)=='produtos_'){
//agarrar a id da session
$id = substr($nome, 9,(strlen($nome) -9));
// montar o carrinho de compras
$dir="produtos/img_pro/";
$pro = mysql_query("SELECT tbl_produto.id_produto, tbl_produto.produto, tbl_produto.preço, tbl_imagem_produto.produto_id, tbl_imagem_produto.imagem1 FROM tbl_produto JOIN tbl_imagem_produto WHERE tbl_produto.id_produto = tbl_imagem_produto.produto_id AND tbl_produto.id_produto=".mysql_real_escape_string((int)$id));
while($row = mysql_fetch_array($pro)){
$subtotal_pro = $quantidade * $row['preço'];
if ($quantidade == 0){
}else{
echo ' <div id="barra_item">
<div class="item1"><img src="'.$dir.''.$row['imagem1'].'" alt="'.$row["produto"].'" width="40" height="50" style="width:auto;"/></div>
<div class="item2">'.$row['produto'].'</div>
<div class="item1"></div>
<div class="item1" class="green">'.number_format($row['preço'],2).' €</div>
<div class="item3">
<div class="i_d"><a href="index.php?pag=sumary&rem_p='.(int)$id.'" class="remove"></a></div>
<div class="i_q1"><a href="index.php?pag=sumary&id1='.(int)$id.'"><img src="img/arrowUp.png" width="16" height="16" /></a></div><div class="i_q"><input name="qnt" type="text" size="1" value="'.$quantidade.'" class="text_are"></div><div class="i_q1"><a href="index.php?pag=sumary&sub_p='.(int)$id.'"><img src="img/arrowDown.png" width="16" height="16" /></a></div></div>
<div class="item3">'.number_format($subtotal_pro, 2).' €</div>
</div>
';
}
}
}
//pro
}
}
//foreach
foreach ($_SESSION as $actividade => $quantidade2){
//igualar uma variavel a session
// verificar se a quantidade é 0
if($quantidade2 > 0){
if(substr($actividade,0,9)=='entidade_'){
//agarrar a id da session
$id2 = substr($actividade, 9,(strlen($actividade) -9));
// montar o carrinho de compras
$dir="universo/actividades /";
$pro2 = mysql_query("SELECT tbl_actividade.id_actividade, tbl_actividade.entidade, tbl_actividade.preço, tbl_imagem_produto.actividade_id, tbl_imagem_produto.imagem1 FROM tbl_actividade JOIN tbl_imagem_produto WHERE tbl_actividade.id_actividade = tbl_imagem_produto.actividade_id AND tbl_actividade.id_actividade=".mysql_real_escape_string((int)$id2));
while($row2 = mysql_fetch_array($pro2)){
$subtotal_act = $quantidade2 * $row2['preço'];
if ($quantidade2 == 0){
}else{
echo '
<div style="clear: both;"></div>
<div id="barra_item">
<div class="item1"><img src="'.$dir.''.$row2['imagem1'].'" alt="'.$row2["entidade"].'" width="40" height="50" style="width:auto;"/></div>
<div class="item2">'.$row2['entidade'].'</div>
<div class="item4"></div>
<div class="item1" class="green">'.number_format($row2['preço'],2).' €</div>
<div class="item3">
<div class="i_d"><a href="index.php?pag=sumary&rem_e='.(int)$id2.'" class="remove"></a></div>
<div class="i_q1"><a href="index.php?pag=sumary&id2='.(int)$id2.'"><img src="img/arrowUp.png" width="16" height="16" /></a></div><div class="i_q"><input name="qnt_e" type="text" size="1" value="'.$quantidade2.'" class="text_are"></div><div class="i_q1"><a href="index.php?pag=sumary&sub_e='.(int)$id2.'"><img src="img/arrowDown.png" width="16" height="16" /></a></div></div>
<div class="item3">'.number_format($subtotal_act, 2).' €</div>
</div>';
}
}
}
//act
}
}
//
}
if(!isset($_SESSION['final']['total'])){
echo' <div id="bloco"><span >Carrinho de compras vazio. Não existe nenhum produto no carrinho de compras.</span></div>';
}
else{
echo' <div id="ite_descricao">
<div class="item1"></div>
<div class="item4"></div>
<div class="item3"></div>
<div class="item1"></div>
<div class="item2" style="text-align:right;">Total Produtos(Iva Inc.):</div>
<div class="item3">'.$total.' €</div>
</div>
<div style="clear: both;"></div>
';
echo' <div id="ite_descricao">
<div class="item1"></div>
<div class="item4"></div>
<div class="item3"></div>
<div class="item1"></div>
<div class="item2" style="text-align:right;">Taxas de envio:</div>
<div class="item3">'.$total.' €</div>
</div>
<div style="clear: both;"></div>';
echo' <div id="ite_descricao">
<div class="item1"></div>
<div class="item4"></div>
<div class="item3"></div>
<div class="item1"></div>
<div class="item2" style="text-align:right;">Descontos:</div>
<div class="item3">'.$total.' €</div>
</div>
<div style="clear: both;"></div>';
echo' <div id="ite_descricao">
<div class="item1"></div>
<div class="item4"></div>
<div class="item3"></div>
<div class="item1"></div>
<div class="item2" style="text-align:right;">Total(taxas Inc.):</div>
<div class="item3">'.number_format($total, 2).' €</div>
</div>
<div style="clear: both;"></div>';
}
}
//fim da classe criada
}
// produtos adicionados
//adicção de produto
if(isset($_GET['id1'])) {
@$_SESSION['produtos_'.$_GET['id1']] += '1';
}
// verificação de subracção
if(isset($_GET['sub_p'])) {
@$_SESSION['produtos_'.$_GET['sub_p']]--;
}
// remover produtos
if(isset($_GET['rem_p'])) {
@$_SESSION['produtos_'.$_GET['rem_p']]= '0';
}
// entidades adicionadas
if(isset($_GET['id2'])) {
@$_SESSION['entidade_'.$_GET['id2']] += '1';
}
// verificação de subracção
if(isset($_GET['sub_e'])) {
@$_SESSION['entidade_'.$_GET['sub_e']]--;
}
// remover produtos
if(isset($_GET['rem_e'])) {
@$_SESSION['entidade_'.$_GET['rem_e']]= '0';
}
//end
?>
Question
biza
Viva pessoal, elaborei o seguinte carrinho de compras mas estou com os seguintes problemas , cada vez que dou um refresh de pagina ele me incrementa uma quantidade ao ultimo produto inserido tem como me ajudar ?
Ai vai o codigo...
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.