Tienes muchos foreachs que no entiendo que hacen, lo que necesitas hacer es simple, generas tu tabla y actualizas, ejemplo:
Código PHP:
Ver original<form>
<table>
<?php foreach ($carro as $identificador => $elemento) { ?>
<tr>
<td><input name="cantidad[<?php echo $identificador; ?>]" value="<?echo echo $elemento['cantidad']; ?>" /></td>
</tr>
<?php } ?>
</table>
</form>
Código PHP:
Ver original<?php
// leer carro
foreach ($_POST['cantidad'] as $identificador => $cantidad) {
if(isset($carro[$identificador]['cantidad'])) { $carro[$identificador]['cantidad'] = $cantidad; // nueva cantidad
}
}
// Salvas carro
Saludos.