how to receive dynamic data from a form and save it to BD

0

My difficulty happens because I created a dynamic grid where I generate sequential rows to include products, so I do not have the names of the traditionally fixed input.

In this case I assign sequential numbering accordingly that I enter the rows.

Ex:

I WILL FOCUS ONLY IN THE PRODUCT FIELD, THE OTHERS WILL FOLLOW THE SAME CONFIGURATION

And when I receive these values I can not read the data ...

$COMPRAS = NEW Compras();


$total              = $_GET['hidden_total'] ; // recebo o valor total da compra
$linha              = $_GET['hidden_linha'] ; // recebo o numero de linhas de produtos inseridos

for ( $i = 1 ;  $i <= $linha ;  $i ++ ) { 

  $produto.$i       = strtoupper($_POST['produto'.$i]) ;
  $qtd.$i           = $_POST['qtd'.$i] ;
  $valor.$i         = $_POST['valor'.$i] ;


  $COMPRAS->produto.$i($produto.$i);
  $COMPRAS->qtd.$i($qtd.$i);
  $COMPRAS->valor.$i($valor.$i);

}

and the class receives the data this way ...

public function produto($produto)       {   $this->produto = $produto; }

public function qtd($qtd)               {   $this->qtd = $qtd; }

public function valor($valor)           {   $this->valor = $valor; }



### INSERT DE PRODUTOS ### x_produtos_cadastro -> x_produtos_cadastro_ok 

public function insert(){

    $sql  = "INSERT INTO $this->table ( produto,qtd,valor )
    VALUES  ( :produto,:qtd,:valor )";


    $z = DB::prepare($sql);

    //$z->bindParam(':usuario'          , $this->usuario);

    $z->bindParam(':produto'        , $this->produto);
    $z->bindParam(':qtd'            , $this->qtd);
    $z->bindParam(':valor'          , $this->valor);

    return $z->execute(); 

}
    
asked by anonymous 13.03.2018 / 20:05

0 answers