Buenas,
El problema está aqui:
Código Javascript
:
Ver originalvar idpieza = $(".idpie").val();
var precio = $(".precio").val();
var cantidad = $(".cantidad").val();
Deduzco que siempre te mete el primer producto. Si pruebas eso en la consola, verás que $(".idpie") es un array de TODOS los producros. Siempre seleccionará el primero.
Yo, personalmente, suelo jugar con un atributo en el boton, por ejemplo
Código HTML:
<a class="btn btn-primary add" data-id="215">Guardar</a>
Y a los campos, llamarlos así
Código HTML:
<input type="text" id="cantidad_215">
(Añadiendo _ID en cada id del campo!)
Y tu funcion js podría ser así:
Código Javascript
:
Ver original$(document).ready(function(){
$(".add").on("click",function(){
var idpieza = $(this).attr('data-id');
var precio = $("#precio_"+idpieza).val();
var cantidad = $("#cantidad_"+idpieza).val();
$.ajax
({
type: "POST",
url: "carrito_idproducto.php",
data: {idpie:idpieza, precio:precio, cantidad:cantidad},
success: function(data)
{
$("#carrito").html(data);
}
});
return false; // Evita ejecutar el submit del formulario
});
});
Almenos, yo suelo usar algo así :)
Saludos!
EDIT: Por cierto, el "precio" no deberias pasarlo, solo cantidad e id... y luego pillar el precio de la bbdd... sino, algún avispadito te lo cambiará! (Y todo depende de que sea tu app, claro!)