que raro!, si en:
function ejecutasubmit(id)
{
alert(id);
te alerta el valor deberías recibirlo sin problemas en "guardarp.php" como:
si no se ve en la URL que anuncias algo está fallado que a simple vista no lo aprecio..
pero trata de asignar el "id" a un valor en javascript, es decir,
var x = id;
luego en
Código PHP:
var accion = "guardarp.php?id="+x+"&caja1="+caja1+"&caja2="+caja2+"&caja3="+caja3;