No entendí la parte:
Cita: el problema es que no puedo enviar variables de forms como los hidden de un carrito de compras.
Imagino que por un lado tenés el form y por otro el archivo ir.php. Sino lo que podés hacer es cambiar el action del form dejándolo vacio para que envie los datos al mismo script y al comienzo del archivo ponés la redirección, ya que si mostras algo en pantalla y luego querés redirreccionar con PHP vas a tener un error con los headers.
Deberías poner algo asi:
Código PHP:
if(isset($_GET['destino'])){
header("Location: " . $_GET['destino']);
}