[英]How to insert multiple form fields data with single invoice no in php mysql
i'm working in a project invoice system based on PHP/Mysqli with Jquery ajax.我正在使用 Jquery ajax 使用基于 PHP/Mysqli 的项目发票系统。 Invoice table structure is: table_invoice -> fields are (id, invoice_no, product, rate, qty).发票表结构为:table_invoice -> 字段为(id, invoice_no, product, rate, qty)。 Add invoice form looks like:添加发票表单如下所示:
<form action="" method="post" id="addForm">
<input type="text" name="productName[]" placeholder="" class="form-control proList" autocomplete="off" />
<input type="text" name="productRate[]" placeholder="" class="form-control" autocomplete="off" />
<input type="text" name="productQuantity[]" placeholder="" class="form-control" autocomplete="off" />
<input type="hidden" name="invoiceNo" value="19299092" />
<input type="hidden" name="action" id="action" value="insert" />
<button type="submit" name="submit" id="submit" class="btn btn-success"><i class="fa fa-plus"></i> Save</button>
</form>
in php file在 php 文件中
<?php
include("connection.php");
if($_POST["action"] == 'insert'){
$invoice = $_POST["invoiceNo"];
$productName = $_POST["productName"];
$productRate = $_POST["productRate"];
$productQuantity = $_POST["productQuantity"];
for($i=0;$i < count($productName);$i++){
$query = mysqli_query($conn,"INSERT INTO tbl_invoice(invoice_no,product,rate,qty) VALUES('".$invoice[$i]."','".$productName[$i]."','".$productRate[$i]."','".productQuantity[$i]."')");
}
}
MYSQL TABLE: MYSQL 表:
19299092, Product 1, 100, 10
0, Product 2, 150, 20
0, Product 3, 200, 20
where's the problem in query or form?查询或表单的问题在哪里?
sorry for not having enough reputation to comment抱歉没有足够的声誉发表评论
same invoice number so you don't have to use index (say field: id is auto increment)相同的发票编号,因此您不必使用索引(例如字段:id 是自动增量)
you may use the following query statement:您可以使用以下查询语句:
"INSERT INTO
tbl_invoice
SET invoice_no = '" . $invoice . "',
product = '" . $productName[$i] . "',
rate = '" . $productRate[$i] . "',
qty = '" . $productQuantity[$i] . "'"
Change query like.更改查询之类的。 You don't need to pass index with $i
in invoice no
because invoice no
is not in an array.您不需要在invoice no
中使用$i
传递索引,因为invoice no
不在数组中。
$query = mysqli_query($conn,"INSERT INTO tbl_invoice(invoice_no,product,rate,qty) VALUES('".$invoice."','".$productName[$i]."','".$productRate[$i]."','".productQuantity[$i]."')");
<input type="hidden" name="invoiceNo" value="19299092" />
Your invoice no is a value you can insert without an array您的发票编号是您可以在没有数组的情况下插入的值
for($i=0;$i < count($productName);$i++){
$query = mysqli_query($conn,"INSERT INTO tbl_invoice(invoice_no,product,rate,qty) VALUES('".$invoice."','".$productName[$i]."','".$productRate[$i]."','".productQuantity[$i]."')");
}
Try this.尝试这个。 Hope It will helps.希望它会有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.