<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod = $_GET['cod'];
// Verificamos se a acao é igual a incluir
if ($acao == "incluir")
{
// Verificamos se cod do produto é diferente de vazio
if ($cod != '')
{
// Se for diferente de vazio verificamos se é numérico
if (is_numeric($cod))
{
// Tratamos a variavel de caracteres indevidos
$cod = addslashes(htmlentities($cod));
// Verificamos se o produto referente ao $cod já está no carrinho para o session id correnpondente
$query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cod = '".$cod."' AND tbl_carrinho.sessao = '".session_id()."'";
$rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error());
$row_rs_carrinho = mysql_fetch_assoc($rs_carrinho);
$totalRows_rs_carrinho = mysql_num_rows($rs_carrinho);
// Se o total for igual a zero é sinal que o produto ainda não está no carrinho
if ($totalRows_rs_carrinho == 0)
{
// Aqui pegamos os dados do produto a ser incluido no carrinho
$query_rs_produto = "select * from tbl_produtos where cod = '".$cod."'";
$rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error());
$row_rs_produto = mysql_fetch_assoc($rs_produto);
$totalRows_rs_produto = mysql_num_rows($rs_produto);
// Se total for maior que zero esse produto existe e então podemos incluir no carrinho
if ($totalRows_rs_produto > 0)
{
$registro_produto = mysql_fetch_assoc($rs_produto);
// Incluimos o produto selecionado no carrinho de compras
$add_sql = "INSERT INTO tbl_carrinho (id, cod, nome, preço, qtd, sessao)
VALUES
('','".$row_rs_produto['cod']."','".$row_rs_produto['nome']."','".$row_rs_produto['preço']."','1','".session_id()."')";
$rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error());
}
}
}
}
}
// Verificamos se a acao é igual a excluir
if ($acao == "excluir")
{
// Verificamos se cod do produto é diferente de vazio
if ($cod != '')
{
// Se for diferente de vazio verificamos se é numérico
if (is_numeric($cod))
{
// Tratamos a variavel de caracteres indevidos
$cod = addslashes(htmlentities($cod));
// Verificamos se o produto referente ao $cod está no carrinho para o session id correnpondente
$query_rs_car = "SELECT * FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'";
$rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error());
$row_rs_carrinho = mysql_fetch_assoc($rs_car);
$totalRows_rs_car = mysql_num_rows($rs_car);
// Se encontrarmos o registro, excluimos do carrinho
if ($totalRows_rs_car > 0)
{
$sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'";
$exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error());
}
}
}
}
// Verificamos se a ação é de modificar a quantidade do produto
if ($acao == "modifica")
{
$quant = $_POST['qtd'];
// Se for diferente de vazio verificamos se é numérico
if (is_array($quant))
{
// Aqui percorremos o nosso array
foreach($quant as $cod => $qtd)
{
// Verificamos se os valores são do tipo numeric
if(is_numeric($cod) && is_numeric($qtd))
{
// Fazemos nosso update nas quantidades dos produtos
$sql_modifica = "UPDATE tbl_carrinho SET qtd = '$qtd' WHERE cod = '$cod' AND sessao = '".session_id()."'";
$rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error());
}
}
}
}
?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Carrinho de Compras</title>
<style type="text/css">
<!--
.style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style4 {
color: #FF0000;
font-weight: bold;
}
-->
</style>
</head>
<body>
<div align="center"><h1>Carrinho de compras</h1></div>
<form action="carrinho.php?acao=modifica" method="post">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<th width="14%" scope="col"><table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<th width="36%" scope="col"><div align="left">PRODUTO</div></th>
<th width="22%" scope="col">PREÇO</th>
<th width="13%" scope="col">QUANTIDADE</th>
<th width="14%" scope="col">SUBTOTAL</th>
<th width="15%" scope="col"> </th>
</tr>
<?
$sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE sessao = '".session_id()."' ORDER BY nome ASC";
$exec_meu_carrinho = mysql_query($sql_meu_carrinho, $conn) or die(mysql_error());
$qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho);
if ($qtd_meu_carrinho > 0)
{
$soma_carrinho = 0;
while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho))
{
$soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']);
?>
<tr>
<td><span class="style3">
<?=$row_rs_produto_carrinho['nome']?>
</span></td>
<td><div align="center" class="style3">
<?= number_format($row_rs_produto_carrinho['preço'],2,",","."); ?>
</div></td>
<td><div align="center" class="style3">
<input type="text" size="2" name="qtd[<?=$row_rs_produto_carrinho['cod']?>]" value="<?=$row_rs_produto_carrinho['qtd']?>" />
</div></td>
<td><div align="center" class="style3">
<?= number_format($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd'],2,",","."); ?>
</div></td>
<td><div align="center"><a href="carrinho.php?cod=<?=$row_rs_produto_carrinho['cod']?>&acao=excluir"><img src="imagem/remover.png" width="32" height="32" border="0" /></a></div></td>
</tr>
<?
}
}
?>
<tr>
<td colspan="3"><div align="right"><strong>TOTAL:</strong> </div>
<div align="right"></div>
<div align="right"></div></td>
<td><div align="center" class="style3 style4">
<?= number_format($soma_carrinho,2,",","."); ?>
</div></td>
<td> </td>
</tr>
<tr>
<td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imagem/continuar_compras.jpg" width="32" height="32" border="0" /></a></span></th>
<th width="33%" scope="col"> </th>
<th width="34%" scope="col"><label>
<input type="image" name="imageField" src="imagem/finalizar.png" />
</label></th>
</tr>
</table></td>
</tr>
</table></th>
</tr>
</table>
</form>
Pergunta
Jeison Pereira
olá, Pessoal!
deve alguns problemas para abrir dados para informar.. veja o erro
Esse deu problema na pagina carrinho.
0) { $soma_carrinho = 0; while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho)) { $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']); ?>Selecionar o produtos index.php<?php include 'conexao/conn.php'; //********************************************************************* // CONFIGURAÇÃO DE BANCO DE DADOS //********************************************************************* $bd = mysql_select_db($database,$conn); ?> <table cellspacing="1" cellpadding="0" width="50%" align="center" border="0"> <tr> <td> <?php $sql = "select * from tbl_produtos order by rand() limit 0,4"; geraColunas(2,$sql); ?> </td> </tr> </table> <?php function geraColunas($pNumColunas,$pQuery){ $resultado = mysql_query($pQuery); echo ("<table width='100%' border='0'>\n"); for($i=0;$i < mysql_num_rows($resultado);++$i){ for($iCont = 0; $iCont < $pNumColunas; $iCont++){ $linha = mysql_fetch_array($resultado); if ($i > $linha) { if ( $intCont < $pNumColunas-1) echo "</tr>\n"; break; } $cod = $linha[0]; $nome =$linha[1]; $img = $linha[2]; $preço = number_format($linha[3],2,",","."); if($iCont == 0) echo "<tr>\n"; echo"<td>"; echo"<table width='266' border ='0' cellspacing='0' cellpadding='0'>"; echo"<tr>"; echo"<td width='250' height='141' valign='middle'><div align='center'><img src='fotos/".$img."' border='0' witdh='189' height='141'/></div></td>"; echo"</tr>"; echo"<tr>"; echo"<td>"; echo"<table width='92%' border='0' cellspacing='0' cellpadding='0'>"; echo"<tr>"; echo"<td><center><div align='center' style='font-size:10px font-family:Verdana'><strong>$nome</strong></div align='center'><font color='#ff0000' size='4px'> R$ ".$preço."</font></strong></div></center></td>"; echo"</tr>"; echo"<tr>"; echo"<td><center><a href='carrinho.php?cod=".$cod."&acao='incluir'><img src='imagem/btn_comprar.gif' border='0'></a></center></td>"; echo"</tr>"; echo"</table>"; echo"</td>"; echo"</tr>"; echo"</table>"; echo"</td>"; if ( $intCont == $pNumColunas-1 ) { echo "</tr>\n"; } else { $i++; } } } echo"</table>"; } ?>Adicionar o carrinho carrinho.php<?php // Iniciamos nossa sessão que vai indicar o usuário pela session_id session_start(); include "conexao/conn.php"; // Recuperamos os valores passados por parametros $acao = $_GET['acao']; $cod = $_GET['cod']; // Verificamos se a acao é igual a incluir if ($acao == "incluir") { // Verificamos se cod do produto é diferente de vazio if ($cod != '') { // Se for diferente de vazio verificamos se é numérico if (is_numeric($cod)) { // Tratamos a variavel de caracteres indevidos $cod = addslashes(htmlentities($cod)); // Verificamos se o produto referente ao $cod já está no carrinho para o session id correnpondente $query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cod = '".$cod."' AND tbl_carrinho.sessao = '".session_id()."'"; $rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error()); $row_rs_carrinho = mysql_fetch_assoc($rs_carrinho); $totalRows_rs_carrinho = mysql_num_rows($rs_carrinho); // Se o total for igual a zero é sinal que o produto ainda não está no carrinho if ($totalRows_rs_carrinho == 0) { // Aqui pegamos os dados do produto a ser incluido no carrinho $query_rs_produto = "select * from tbl_produtos where cod = '".$cod."'"; $rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error()); $row_rs_produto = mysql_fetch_assoc($rs_produto); $totalRows_rs_produto = mysql_num_rows($rs_produto); // Se total for maior que zero esse produto existe e então podemos incluir no carrinho if ($totalRows_rs_produto > 0) { $registro_produto = mysql_fetch_assoc($rs_produto); // Incluimos o produto selecionado no carrinho de compras $add_sql = "INSERT INTO tbl_carrinho (id, cod, nome, preço, qtd, sessao) VALUES ('','".$row_rs_produto['cod']."','".$row_rs_produto['nome']."','".$row_rs_produto['preço']."','1','".session_id()."')"; $rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error()); } } } } } // Verificamos se a acao é igual a excluir if ($acao == "excluir") { // Verificamos se cod do produto é diferente de vazio if ($cod != '') { // Se for diferente de vazio verificamos se é numérico if (is_numeric($cod)) { // Tratamos a variavel de caracteres indevidos $cod = addslashes(htmlentities($cod)); // Verificamos se o produto referente ao $cod está no carrinho para o session id correnpondente $query_rs_car = "SELECT * FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'"; $rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error()); $row_rs_carrinho = mysql_fetch_assoc($rs_car); $totalRows_rs_car = mysql_num_rows($rs_car); // Se encontrarmos o registro, excluimos do carrinho if ($totalRows_rs_car > 0) { $sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'"; $exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error()); } } } } // Verificamos se a ação é de modificar a quantidade do produto if ($acao == "modifica") { $quant = $_POST['qtd']; // Se for diferente de vazio verificamos se é numérico if (is_array($quant)) { // Aqui percorremos o nosso array foreach($quant as $cod => $qtd) { // Verificamos se os valores são do tipo numeric if(is_numeric($cod) && is_numeric($qtd)) { // Fazemos nosso update nas quantidades dos produtos $sql_modifica = "UPDATE tbl_carrinho SET qtd = '$qtd' WHERE cod = '$cod' AND sessao = '".session_id()."'"; $rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error()); } } } } ?> <!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> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Carrinho de Compras</title> <style type="text/css"> <!-- .style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; } .style4 { color: #FF0000; font-weight: bold; } --> </style> </head> <body> <div align="center"><h1>Carrinho de compras</h1></div> <form action="carrinho.php?acao=modifica" method="post"> <table width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <th width="14%" scope="col"><table width="100%" border="1" cellspacing="0" cellpadding="0"> <tr> <th width="36%" scope="col"><div align="left">PRODUTO</div></th> <th width="22%" scope="col">PREÇO</th> <th width="13%" scope="col">QUANTIDADE</th> <th width="14%" scope="col">SUBTOTAL</th> <th width="15%" scope="col"> </th> </tr> <? $sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE sessao = '".session_id()."' ORDER BY nome ASC"; $exec_meu_carrinho = mysql_query($sql_meu_carrinho, $conn) or die(mysql_error()); $qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho); if ($qtd_meu_carrinho > 0) { $soma_carrinho = 0; while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho)) { $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']); ?> <tr> <td><span class="style3"> <?=$row_rs_produto_carrinho['nome']?> </span></td> <td><div align="center" class="style3"> <?= number_format($row_rs_produto_carrinho['preço'],2,",","."); ?> </div></td> <td><div align="center" class="style3"> <input type="text" size="2" name="qtd[<?=$row_rs_produto_carrinho['cod']?>]" value="<?=$row_rs_produto_carrinho['qtd']?>" /> </div></td> <td><div align="center" class="style3"> <?= number_format($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd'],2,",","."); ?> </div></td> <td><div align="center"><a href="carrinho.php?cod=<?=$row_rs_produto_carrinho['cod']?>&acao=excluir"><img src="imagem/remover.png" width="32" height="32" border="0" /></a></div></td> </tr> <? } } ?> <tr> <td colspan="3"><div align="right"><strong>TOTAL:</strong> </div> <div align="right"></div> <div align="right"></div></td> <td><div align="center" class="style3 style4"> <?= number_format($soma_carrinho,2,",","."); ?> </div></td> <td> </td> </tr> <tr> <td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imagem/continuar_compras.jpg" width="32" height="32" border="0" /></a></span></th> <th width="33%" scope="col"> </th> <th width="34%" scope="col"><label> <input type="image" name="imageField" src="imagem/finalizar.png" /> </label></th> </tr> </table></td> </tr> </table></th> </tr> </table> </form>Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.