2016-08-17 2 views
0

У меня есть магазин электронной торговли, который я настраиваю, и мне нужен каждый купленный товар, введенный в базу данных. Например, кто-то покупает qty из 2, мне нужно повторить запись данных SQL, чтобы она имела две записи. См. Код ниже и дайте мне знать, как я могу использовать product_qty для достижения этого.PHP повторить запись SQL X количество раз

if (isset($_SESSION["cart_products"])) 
{ 
    $total = 0; //set initial total value 
    $b = 0; //var for zebra stripe table 
    foreach ($_SESSION["cart_products"] as $cart_itm) 
    { 
     $product_name = $cart_itm["product_name"]; 
     $product_qty = $cart_itm["product_qty"]; 
     $product_price = $cart_itm["product_price"]; 
     $product_code = $cart_itm["product_code"]; 
     $product_color = $cart_itm["product_color"]; 
     $subtotal = ($product_price * $product_qty); //calculate Price x Qty 
     $name = $_SESSION['firstName']. ' ' .$_SESSION['lastName']; 

     mysqli_query(
      $mysqli, 
      "INSERT INTO Order_Tickets 
        (sku, tktproduct, tktprice, purchaser) 
      VALUES ('$product_code','$product_name','$product_price','$name')" 
     ) or die(mysqli_error()); 
    } 

} 
+0

Вы уязвимы для [SQL инъекций атаки] (http://bobby-tables.com) –

+0

Да, я знаю, это раннее развитие, что будут добавляться в один раз у меня есть код функционирования. – user2044644

ответ

0

Вы могли бы сделать что-то вроде этого?

if ($product_qty > 1) 
{ 
    for ($i = 0; $i <= $product_qty; $i++) 
    { 
     mysqli_query($mysqli, "INSERT INTO Order_Tickets (sku, tktproduct, tktprice, purchaser) VALUES ('$product_code','$product_name','$product_price','$name')") 
    } 
} 
+1

Спасибо! Вы поставили меня на правильный путь - только одно изменение необходимо, чтобы $ i равнялось 1, а не нулю – user2044644