sql >> Base de Datos >  >> RDS >> Mysql

Bucle a través de matrices de entrada de formulario en php

La solución correcta dependerá de si planea almacenar valores escalares en $_POST['factura']['nuevos_elementos_atributos'] o si planea convertirlo en una matriz de matrices (en otras palabras, planea tener múltiplos de los nuevos_elementos_atributos .

Si solo planea almacenar valores escalares, primero deberá cambiar cada uno de los elementos del formulario para que se vea así:

name="inovoice[new_item_attributes][description]"

Notarás que el [] vacío se ha ido.

Y luego su ciclo debería verse así:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
    $data = array('description => $value);
}

De lo contrario, deberá usar esto en su código PHP:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
         $data = array('description' => $val['description']);
}

O:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
     foreach($val as $sub => $value) {
         $data = array($sub => $value);
     }
}