Pagina 1 din 1

Insert date in mysql din array multidimensional

Scris: Mie Mai 16, 2018
de giulian9
Intr-un array multidimensional sunt niste produse care sunt cumparate(shop). Eu vreau sa salvez in baza de date numele produsului, pretul si cantitatea.
arata cam asa datele ce vreau sa le preiau.

Cod: Selectaţi tot

array (
  'login_user' => 'julian',
  'shopping_cart' => 
  array (
    0 => 
    array (
      'item_id' => '2',
      'item_name' => 'switch',
      'item_price' => '12',
      'item_quantity' => '1',
    ),
    1 => 
    array (
      'item_id' => '6',
      'item_name' => 'windows 10',
      'item_price' => '50',
      'item_quantity' => '1',
    ),
  ),
)
INSERT in mysql :

Cod: Selectaţi tot

INSERT INTO bestellung (nume,pret,bucati) values ($str) ;

Insert date in mysql din array multidimensional

Scris: Joi Mai 17, 2018
de MarPlo
Poti sa folosesti codul din urmatorul exemplu. Daca array-ul are aceeasi structura ar trebui sa functioneze.

Cod: Selectaţi tot

$arr =[
  'login_user'=>'julian',
  'shopping_cart'=>[
    0=>[
      'item_id' => '2',
      'item_name' => 'switch',
      'item_price' => '12',
      'item_quantity' => '1',
    ],
    1=>[
      'item_id' => '6',
      'item_name' => 'windows 10',
      'item_price' => '50',
      'item_quantity' => '1',
    ]
  ]
];

$ar_ins =[]; //store data for insert

foreach($arr['shopping_cart'] as $k=>$v){
  if(is_array($v)) $ar_ins[] ="('".$v['item_name'] ."', ". $v['item_price'] .", ". $v['item_quantity'].")";
}

$sql ="INSERT INTO bestellung (name, price, quantity) VALUES ". implode(', ', $ar_ins);

//To check the $sql
echo $sql; // INSERT INTO bestellung (name, price, quantity) VALUES ('switch', 12, 1), ('windows 10', 50, 1)