carrinho de compras - ajuda na correcção de alguns erros
|
14-06-2011, 12:16
Mensagem: #1
|
|||
|
|||
carrinho de compras - ajuda na correcção de alguns erros
Boas, no desenvolver de uma loja on-line, e após uma pesquisa na internet, encontrei este tutorial (http://www.videoaulasbrasil.com.br/php/c...s-com-php/) de onde explica a parte de adicionar produtos ao carrinho de compras e visualização do carrinho de compras.
Tenho então a página onde aparecem os produtos (categoria1.php) e tem: <?php echo ' <a href="carrinho.php?acao=add&id='.$linha['id'].'"> <img src="../imagens/comprar.jpg" /></a>'; ?> e depois tenho a página carrinho.php com o seguinte código: <?php session_start(); if(!isset($_SESSION['carrinho'])){ $_SESSION['carrinho'] = array(); } // Adiciona produto if(isset($_GET['acao'])){ //Adicionar carrinho if($_GET['acao'] == 'add'){ $id = intval ($_GET['id']); if(!isset($_SESSION['carrinho'][$id])){ $_SESSION['carrinho'][$id] = 1; }else{ $_SESSION['carrinho'][$id] += 1; } } //Remover carrinho if($_GET['acao'] == 'del'){ $id = intval ($_GET['id']); if(isset($_SESSION['carrinho'][$id])){ unset($_SESSION['carrinho'][$id]); } } //alterar quantidade if($_GET['acao'] == 'up'){ if (is_array($_POST['prod'])){ foreach($_POST['prod'] as $id => $qtd){ $id = intval ($id); $qtd = intval ($qtd); if (!empty($qtd) || $qtd <> 0){ $_SESSION['carrinho'][$id] = $qtd; }else{ unset($_SESSION['carrinho'][$id]); } } } } } ?> <?php include ("verifica.php"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <?php include "../admin/ligacao.php"; ?> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css"> <!-- @import url(../css.css); --> </style> </head> <body> <div id="conteudo"> <b class="titulo">Carrinho de Compras</b> <div id="texto"> <table border="0px" style="text-align:center"> <tr><td colspan="6" style="text-align:right"><a href="categoria1.php" class="formulario" style="text-decoration:none;"> Continuar as compras </a></td></tr> <tr height="5px"></tr> <tr></tr> <tr> <td width="200"><b>Nome do Produto</b></td> <td width="80"><b>Imagem</b></td> <td width="79"><b>Quantidade</b></td> <td width="75"><b>Preço</b></td> <td width="90"><b>Subtotal</b></td> <td width="64"><b>Acções</b></td> </tr> <form action="?acao=up" method="post"> <?php if (count($_SESSION['carrinho'])== 0){ echo '<tr> <td colspan="5"> Não há produtos no carrinho </td></tr>'; }else{ foreach ($_SESSION['carrinho'] as $id => $qtd){ $sql = "SELECT * FROM produtos WHERE id= '$id'"; $sql = mysql_query($sql) or die (mysql_error()); $linha = mysql_fetch_assoc($sql); $nome_produto = $linha['nome_produto']; $imagem = $linha['imagem']; $preco = number_format ($linha ['preco'], 2, ',', ''); $sub = number_format ($linha ['preco'] * $qtd, 2, ',', ''); $total += $sub; echo '<tr> <td> '.$nome_produto.' </td> <td><img src="../imagens/'.$imagem.'" style="max-width:60px; max-height:60px;" border="0px" /> </td> <td> <input type="text" size="3" name="prod['.$id.']" value="'.$qtd.'" style="text-align:center"/> </td> <td> '.$preco.' €</td> <td> '.$sub.' € </td> <td> <a href="?acao=del&id='.$id.'"><span class="formulario"> Apagar</span> </a> </td> </tr>'; } $total = number_format ($total, 2, ',', ''); echo '<tr></tr><tr> <td colspan ="3"></td> <td><b>Total</</td> <td> '.$total.' € </td> </tr><tr></tr>'; } ?> <tr> <td colspan="4"></td> <td colspan="2"><input type="submit" value="Actualizar Encomenda" class="formulario" style="text-align:right" /></td> </tr> <tr> </tr> <tr> <td colspan="4"></td> <td colspan="2"> <a href="finalizar_encomenda.php"><span class="formulario">Finalizar a encomenda</span></a></td> </tr> <tr height="15px"></tr> </form> </table> mas acontecem alguns problemas: • Após adicionar um produto ao carrinho de compras se carregar F5 ele aumenta uma unidade ao último produto inserido • Não esta a fazer o total bem (se tiver 8.50 ele totaliza 8€) É possível alaguem me ajudar sff? |
|||
« Mais Antigo | Mais Recente »
|
Mensagem neste Tópico |
carrinho de compras - ajuda na correcção de alguns erros - Suesana - 14-06-2011 12:16
RE: carrinho de compras - ajuda na correcção de alguns erros - Bruno Bernardino - 14-06-2011, 14:12
RE: carrinho de compras - ajuda na correcção de alguns erros - Suesana - 14-06-2011, 14:29
RE: carrinho de compras - ajuda na correcção de alguns erros - Bruno Bernardino - 14-06-2011, 14:32
RE: carrinho de compras - ajuda na correcção de alguns erros - Canha - 14-06-2011, 15:54
RE: carrinho de compras - ajuda na correcção de alguns erros - Suesana - 14-06-2011, 15:59
RE: carrinho de compras - ajuda na correcção de alguns erros - Canha - 14-06-2011, 16:01
RE: carrinho de compras - ajuda na correcção de alguns erros - Bruno Bernardino - 14-06-2011, 16:08
RE: carrinho de compras - ajuda na correcção de alguns erros - Suesana - 14-06-2011, 16:46
|
Utilizadores a ver este tópico: 2 Visitante(s)