Bueno:
Creo que puede hacerse...
Puede haber 2 botones submit y que según cuál se pulse se abra el popup y se envíe... y el otro uno normal...
<form action="" onclick="chequear(this)"
<input type=submit onclick="hacer='prever'" value="prever"/>
<input type=submit onclick="hacer='enviar'" value="enviar"/>
...
</form>
y el método chequera sería más o menos...
function chequear(formulario) {
if (hacer == "prever") {
formulario.action = "descripcion.php";
formulario.target = "popup";
window.open("", "popup", "width=100,height=100");
} else {
formulario.action = "carrito.php";
formulario.target = "_self";
}
}
No lo he probado, pero espero que te sirva la idea.
Saludos