Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
To fazendo um sistema de carrinho de compras e tá quase pronto, porem, to com um problema:
Exemplo:
Adiciono um item, quando submeto o formulario de concluir a venda, ele da um refresh e incrementa um item ao ultimo produto adicionado.
Queria saber como faço pra impedir que ao enviar o formulario, ele dê esse refresh na pagina.
OBS:o formulario é submetido para propria página.
Essa é a parte que adiciono o item no carrinho:
//ADICIONAR CARRINHO
if(@$_GET['acao'] == 'add'){
$id = intval($_GET['id']);
if(!isset($_SESSION['venda'][$id])){
$_SESSION['venda'][$id] = 1; // se o item nao tiver no carrinho ainda, adiciona com a quantidade 1
}else{
$_SESSION['venda'][$id] += 1; // se já tiver, incrementa 1 a cada clique no botao de compra
}
}
O botão:
<form method="post" enctype="multipart/form-data" action="">
<input style="float:right;" type="submit" name="enviar" value="Finalizar Pedido" class="btn btn-sm btn-success" />
</form><?php // realizar venda
if(isset($_POST['enviar'])){
$inserirVenda = @insert("venda", "valor", "{$totalCompra}");
$sqlVenda = mysql_query ("SELECT MAX(id) FROM venda");
$idVenda = mysql_result ($sqlVenda,0);
foreach($_SESSION['venda'] as $produtosInseridos => $qtd): //esse 1 que ta ai é a quantidade, mudar para parametro
$inserirItens = insert("item_venda", "id_venda, id_produto", "{$idVenda}, {$produtosInseridos}");
endforeach;
if($inserirVenda){ // se inserir a venda - significando que tem itens no carrinho
echo "<script>alert('Venda concluida com sucesso');</script>";
}
if (!$inserirVenda){ // caso contrario
echo "<script>alert('Venda não realizada. Verifique seu pedido.');</script>";
}
echo "<script>document.location = 'vendas.php'</script>";
session_destroy();
}
?>
Deve ter algo no seu código que está fazendo isso. Coloque ai o código!