i'm working in a project invoice system based on PHP/Mysqli with Jquery ajax. Invoice table structure is: table_invoice -> fields are (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
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:
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)
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.
$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.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.