我正在将一些数据插入到表中,并且我需要在该查询之后直接将该查询的id插入到另一个查询中。
$database = DatabaseFactory::getFactory()->getConnection();
$addproduct = $database->prepare("INSERT INTO products(title, description, price,
startingprice, buyitnow, itemcondition, shortdescription, enddate, offers,
location, shipping, quantity, date, username) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
$result = $addproduct->execute(array($title, $maindescription, $price, $startingprice,
$type, $condition, $shortdescription, $enddate, $offers, $country,
$shipping, $quantity, date("Y-m-d: H:i:s"), $user->username));
print_r($result);
if($result):
//add bid for min price to stop fetching every second
$addbid = $database->prepare("INSERT INTO bids(bids_amount,bids_timestamp, bids_username, bids_item) VALUES(?,?,?,?)");
$addbid->execute(array($price, strtotime("NOW"), $user->username, $result->id));
return 2;
else:
return 3;
endif;
正如您所看到的,我正在尝试获取上一个查询的ID,并将其插入到我的第二个查询中的'bid_items'。
如何获取我在第一个查询中插入的数据数组?
答案 0 :(得分:0)
只需使用LastInsertId:
$result = $addproduct->execute(...);
$inserted_id = $database->lastInsertId;
然后在即将进行的查询中根据需要使用$ inserted_id