PDO视图插入查询的详细信息

时间:2015-03-15 16:27:29

标签: php mysql pdo

我正在将一些数据插入到表中,并且我需要在该查询之后直接将该查询的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'。

如何获取我在第一个查询中插入的数据数组?

1 个答案:

答案 0 :(得分:0)

只需使用LastInsertId:

$result = $addproduct->execute(...);
$inserted_id = $database->lastInsertId;

然后在即将进行的查询中根据需要使用$ inserted_id