Enviado em 14/04/2016 - 13:22h
Bom dia coloco abaixo meu carrinho de compras com o php e o js, o problema que tenho e que ao gerar o boleto ele so pega o total do primeiro produto apenas.como posso fazer para que o total seja de todos os produtos que eu adicionar, ou seja quero colocar na variavel do boleto, o valor total correto.
<?php
$total = 0;
if(count($_SESSION['shop']) == 0){
echo '<tr><td align = "center" colspan="9"><strong><font size="6" color="red">Não existem produtos em seu cesto de compras !</td></tr>';
}else{
$conn = conecta();
foreach ($_SESSION['shop'] as $id => $qtd) {
$cart = $conn->prepare("SELECT * FROM produtos WHERE id=$id");
$cart->setFetchMode(PDO::FETCH_ASSOC);
$cart->execute();
while ($linha = $cart->fetch()) {
$foto = $linha['foto'];
$nome = $linha['nome'];
$descricao = $linha['descricao'];
$tamanho = $linha['tamanho'];
$cor = $linha['cor'];
$preco = $linha['preco'];
$linha['preco'] = str_replace(",",".",$linha['preco']);
$_SESSION['preco'] = $linha['preco'];
$sub = number_format($linha['preco'] * $qtd, 2, ',', '.');
$_SESSION['sub'] = number_format($linha['preco']* $qtd, 2, ',', '.');
$total = number_format($total,2,".",".");
$total += $linha['preco'] * $qtd;
echo '<tr>';
echo '<td><img src = "' . $foto . ' " width = "120px"</td>';
echo '<td><strong><font size="4" color="black">'.$nome.'</td>';
echo '<td><strong><font size="4" color="black">'.$descricao.'</td>';
echo '<td><strong><font size="4" color="black">'.$tamanho.'</td>';
echo '<td><strong><font size="4" color="black">'.$cor.'</td>';
echo' <td><strong><span class="preco"><font size="4" color="black" id="preco'.$linha['id'].'">R$ ' . $_SESSION['preco'] . '</font></strong></span></td>';
echo'<td><input rel="'.$linha['id'].'" type="number" step="1" min="1" style="width:50px; font-family: Tahoma; font-size: 20px;" name="prod[' . $id . ']" value="' . $qtd . '"></td>';
echo '<td><div id="total" ><strong><font size="5" color="black" id="sub'.$linha['id'].'">R$ ' . $_SESSION['sub'] . '</font></strong></div></td>';
echo '<td align = "center" colspan = "9"><a href="?acao=del&id='.$id.'"><img src="./imagens/remover.png" width="70" height="70" ></td>';
echo '</tr>';
}
echo '<tr>';
}
}
?>
$(document).ready(function (e) {
$('input').change(function (e) {
id = $(this).attr('rel');
$index = this.value;
$preco = $('font#preco'+id).html().replace("R$ ",'');
console.log($preco);
$val = ($preco*$index).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');;
$('font#sub'+id).html('R$ '+$val);
clearInterval(timer);
});
});