我目前正在将行从“ mycart”表移至“ itemorders”表。
$query = "INSERT into orders
(email,address,postalcode,contactNo,orderdate,status) values
('".$email."','".$address."','".$postalcode."','".$contactNo."','".$orderdate."','".$status."');";
$query .= "INSERT into itemorders (itemID,itemName,itemSize,itemPrice,quantity) SELECT itemID,itemName,itemSize,itemPrice,quantity FROM mycart WHERE email='".$email."' ";
$result = mysqli_multi_query($conn,$query);
$ordersID = mysqli_insert_id($conn);
当前,我在“ itemorders”表中有一个名为ordersID的附加字段,第一个查询还自动增加了ordersID。我想将在第一个查询中使用的$ ordersID值插入第二个查询中。我该怎么办?
答案 0 :(得分:2)
在MySQL中使用LAST_INSERT_ID()
函数。就像mysqli_insert_id()
一样,它会获取最后的自动增量ID。
$query .= "INSERT into itemorders (itemID,itemName,itemSize,itemPrice,quantity,orderSID)
SELECT itemID,itemName,itemSize,itemPrice,quantity, LAST_INSERT_ID()
FROM mycart
WHERE email='".$email."' ";