Mysql
 sql >> Database >  >> RDS >> Mysql

Inserisci i valori dell'array si inseriscono in un ID singolo nel database mysql usando php e PDO

Ciao, il modo migliore penso sia dare un nome diverso a tutti gli input come 'new_screen_price' 'old_screen_price'

se il tuo modulo è generato da js puoi farlo se non è inserito direttamente nell'html che hai

<input name='new_screen_price'>
<input name='new_screen_qty'>
...

dopo aver preso il tuo singolo valore in php come

$newScreen = [];
$newScreen['name'] = 'new screen';
$newScreen['price'] = $_POST['new_screen_price'];

metti il ​​tuo prodotto array in uno

$products = [];
$products['newScreen'] = $newScreen;

sei pronto per la tua richiesta, faccio solo per due parametri prezzo e nome ma ovviamente hai bisogno di tutti

foreach($products as $prod){
   $statement = $db->prepare("INSERT INTO invoice (orderNo,customerNo,productName,price,quantity,amount,createDate,createTime,createBy) VALUES (?,?,:name,:price,...)");
   $statement->bindParam(':name', $prod->name);
   $statement->bindParam(':price', $prod->price);
   $statement->execute();
}

buona giornata spero che questo possa aiutarti