gpt4 book ai didi

php - 如何为要插入数据库sql的许多股票添加一个id

转载 作者:行者123 更新时间:2023-11-29 05:58:37 25 4
gpt4 key购买 nike

我有一个动态添加表单字段功能,可以将 1 个订单中的许多股票添加到数据库。

但是我无法为包含许多库存的订单插入相同的 order_id。我需要使用 order_id 打印订单详情

ordertable
--------------------------------------------------------
| order_id | order_item_id | item_name | item_quantity |
--------------------------------------------------------

stocktable
-----------------------------------------------------
| item_id | item_name | item_descript | item_quantity |
-----------------------------------------------------

<?php
require_once('../config.php');

$number = count($_POST["item_name"]);
$item_name=$_POST['item_name'];
$item_quantity=$_POST['item_quantity'];
$order_id = uniqid();

if($number > 0)
{
for($i=0; $i<$number; $i++)
{
if($item_name[$i]!="" && $item_quantity[$i]!="")
{
$sql = "INSERT INTO ordertable(order_id,item_name,item_quantity)
VALUES('$order_id','$item_name[$i]','$item_quantity[$i]')";
mysqli_query($conn, $sql);
}
}

}
$conn->close();
?>

最佳答案

您的架构需要一些更改。 stocktable 包含库存项目列表。 ordertable 应该 包含订单列表,而您缺少 orderdetailtable,其中包含给定订单的每个库存项目。

问题是在您的架构中,您有订单表,主键为 order_id,并且您希望将所有订单行项目放入相同的 order_id ...这行不通。

创建一个新表来保存订单行项目,并在订单表中包含订单特定信息,例如客户、日期等。订单明细表可以看作是订单和库存之间的链接表项目。

ordertable
------------------------------
| order_id | order_date | ...
------------------------------

orderdetailtable
----------------------------------------------------------
| order_detail_id | order_id | stock_id | order_quantity |
----------------------------------------------------------

stocktable
--------------------------------------------------------
| stock_id | item_name | item_descript | item_quantity |
--------------------------------------------------------

更新上面的代码也需要更改,以适应新的数据库结构。

...
if($number > 0)
{
$sql = "INSERT INTO ordertable(order_id, ...) VALUES('$order_id', ...";
mysqli_query($conn, $sql);

for($i=0; $i<$number; $i++)
{
$order_detail_id = uniqid();
if($item_name[$i]!="" && $item_quantity[$i]!="")
{
$sql = "INSERT INTO orderdetailtable(order_detail_id,order_id,stock_id,item_quantity)
VALUES('$order_detail_id','$order_id','$item_id[$i]','$item_quantity[$i]')";
mysqli_query($conn, $sql);
}
}
...

关于php - 如何为要插入数据库sql的许多股票添加一个id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47052259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com