Tus variables del formulario .. den ser tipo array:
<input name="Producto[]" type="hidden" id="<?php echo $row["itemId"]; ?>" value="<?php echo $row["articulo"]; ?>">
El elemento (tu input hidden o el que coresponda) .. llevará en ese Array (Producto en ese caso) el valor en cada indice que indiques en "value" .. Supongo que necesitaras ahí el "itemId" para relacionarlo en tu BD .. (el "id sólo te servirá para efectos de Javacript y control de objetos por indice .. no para tomar ese valor en tu script PHP de proceso .. .solo el nombre de campo y su "value" es lo que podrás recibir en tu scirpt PHP.)
Si los llamas así (nombre[] o nombre[indice]).. en PHP recibiras un array que puedes procesar como tal .. Bien sea leyendolo con un bucle for() o foreach() (según corresponda si usas indices o no y si tienes más arrays asociados por su mismo indice como es tu caso ) ..
Si usas varios arrays para llevar X propiedades de ese registro ..
Código PHP:
while(){
<input type="loquesea" name="propiedad1[]" ....
<input type="loquesea" name="propiedad2[]"....
}
en PHP te vendrá bien recorrer dicho(s) arrays con un bucle for()
Código PHP:
for ($x=0; $x<count($_POST['propiedad1']; $x++){
echo "Propiedad1: ".$_POST['propiedad1'][$x]."<br>";
echo "Propiedad2: ".$_POST['propiedad2'][$x]."<br>";
echo "PropiedadN: ".$_POST['propiedadN'][$x]."<br>";
}
Como veras .. se cuenta (count()) el total de elementos de uno de los arrays que recibiras en tu script PHP .. Se asume que los indices van a ser 1<->1 de todos los arrays (otra cosa será que tengan valor o no dicho indice de cada array).
Un saludo,