Вставьте несколько продуктов в один идентификатор, используя вставки массива с нагрузкой Ajax. Возможно, используйте Explode, но вам нужна четкая инструкция для этого типа вывода:
весь продукт (проблема) будет вводиться в один идентификатор. Этот список проблем добавлен Ajax.
<?php if(isset($_POST['Submit'])){ try { $serviceTitle = $_POST['serviceTitle']; $price = $_POST['price']; $quantity = $_POST['quantity']; $amount = $_POST['amount']; $date = date('Ym-d'); date_default_timezone_set('Asia/Dacca'); $time = date('h:i:s'); $createBy = $_SESSION['sess_username']; $_SESSION['orderNo'] = $_POST['orderNo']; $_SESSION['customerNo'] = $_POST['customerNo']; if($_POST['Submit']==='Submit'){ for($i=0;$i<count($serviceTitle);$i++){ $statement = $db->prepare("INSERT INTO invoice (orderNo,customerNo,productName,price,quantity,amount,createDate,createTime,createBy) VALUES (?,?,?,?,?,?,?,?,?)"); $statement->execute(array($_POST['orderNo'],$_POST['customerNo'],$serviceTitle[$i],$price[$i],$quantity[$i],$amount[$i],$date,$time,$createBy)); } } header("location: order_confirm_tech_step2.php"); } catch(Exception $e) { $error_message = $e->getMessage(); } } ?>
Он будет вставляться в том же порядкеNo и customerNo, но я хочу вставить строку данных следующим образом: заранее спасибо.
Привет, лучший способ, я думаю, это дать другое имя для всех inpunt, таких как 'new_screen_price' 'old_screen_price'
если ваша форма генерируется js, вы можете сделать это, если не поставить прямо в html, который у вас есть
<input name='new_screen_price'> <input name='new_screen_qty'> ...
после того, как вы возьмете свое значение в php, как
$newScreen = []; $newScreen['name'] = 'new screen'; $newScreen['price'] = $_POST['new_screen_price'];
поместите свой массив в один
$products = []; $products['newScreen'] = $newScreen;
вы готовы для вашего запроса, я просто делаю для двух параметров цену и имя, но, очевидно, вам нужно для всех
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(); }
Добрый день, надеюсь, это поможет вам