Estos procesos se hacen de manera inversa.
O sea, vos para dibujar el form var parseando los nodos del xml...y cuando los guardes, tenes que hacer lo mismo. Saquemos el xml para explicartelo.
Suponiendo que tenes un vector con dos posiciones:
Código PHP:
<?php
$var = array(1,2);
?>
Y en base a este generamos un formulario
Código PHP:
<?php
$var = array(1,2);
foreach( $var as $v ){
?>
<input type="text" name="tuControl_<?php echo $v;?>">
<?php
}
?>
Esto te generara dos text:
<input type="text" name="tuControl_1">
<input type="text" name="tuControl_2">
Pero como cuando grabes, no sabes como se llaman, tenes dos opciones, o haces el inverso, o levantas todo el post de una, lo cual no recomiendo. El inverso, en el grabar seria:
Código PHP:
<?php
$var = array(1,2);
foreach( $var as $v ){
$tuValorPost = isset( $_POST["tuControl_".$v] ) ? $_POST["tuControl_".$v] : 'sin valor';
echo "El campo tuControl_". $v . " tiene el siguiente valor: " . $tuValorPost . "<hr>";
}
?>
Espero que se haya entendido lo que trate de explicarte.