【发布时间】:2016-06-30 03:49:16
【问题描述】:
我有一个表orders,其中有一个用户选择的列表,它们存储在list列中
TABLE orders
userid | theorder | price
-------------------------------
20 | Cigar | 5.00
20 | Beer | 6.00
20 | Whiskey | 20.00
20 | Bacon | 10.00
21 | Beer | 10.00
21 | Bacon | 10.00
22 | Cigar | 10.00
还有一个名为confirmation 的新表,我想在其中连接所有用户的选择!问题是该列正在输出许多“数组”字!
这是我想要的:
TABLE confirmation
userid | list | price
-------------------------------------------------
20 | Cigar, Beer, Whiskey, Bacon | 41.00
21 | Beer, Bacon | 20.00
22 | Cigar | 10.00
这是实际的问题:
TABLE confirmation
userid | list | price
-------------------------------------------------
20 | Array, Array, Array, Array | 41.00
21 | Array, Array | 20.00
22 | Array | 10.00
这是我正在使用的代码
$sql = "SELECT theorder FROM orders WHERE userid='$userID'";
$result = $conn->query($sql);
$getOrder = $result->fetchAll(PDO::FETCH_ASSOC);
$sql = "INSERT INTO confirmation (list, userid) SELECT GROUP_CONCAT('$getOrder' SEPARATOR ', '), '$userID' FROM orders";
$result = $conn->query($sql);
注意:我尝试过使用
foreach函数,但它会输出许多具有相同“数组”字值的行!
【问题讨论】: