我想从mySQL表中获取数据,并希望将每一行(即我的查询获得的)插入到另一个表中。php插入mysql while循环
有了下面的代码让我的DATAS:
$cart = new Dbconn();
$query = new Dbconn();
if ($cart->pdo()) {
$cart->stmt("SELECT id, product FROM cart WHERE uid =:uid");
$cart->bindParam(':uid', Session::get('uid'));
$cart->exe();
}
后,我得到了我想要把它插入数据,while循环
while ($rowPay = $cart->fetch()) {
if ($query->pdo()) {
$query->stmt('INSERT INTO orders (products_id, order_id) VALUES(:uid, :products)');
$query->bindParam(':user_id', Session::get('uid'));
$query->bindParam(':products', $rowPay['product']);
$query->exe();
}
}
他得到所有提交的数据,但仅插入第一条目。我的错误在哪里?
问候
是你的外循环选择? – devpro
@devpro他使用抓取,而不是fetchall,虽然显然有人说他不需要这样做的fetchall,亲自我会设置一个抓取,然后使用foreach来循环所有结果。 – TheHidden
你从哪里得到'$ payCart'变量。 – akhilp2255