【发布时间】:2019-12-15 14:48:50
【问题描述】:
我有一个多对一的问题,我在 mysql 中组织了如下数据:
>order1 : mycustomer : item1
>order1 : mycustomer : item2
>order2 : mycustomer : item3
>order2 : mycustomer : item1
>order3 : mycustomer : item2
我想创建类似的 JSON(用于解释目的)
>order1 mycustomer
>> item1
>> item2,
>order2 mycustomer
>> item3
>> item1,
>order3 mycustomer
>> item2
但是我的循环不正确,我没有得到带有项目数组的订单,然后重复下一个订单。我做错了什么。
$query = "SELECT * from `orders` WHERE proc = 'N'";
$result = $conn->query($query);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$onum = $row['order_number'];
foreach($result as $results)
{
$quantity_invoiced = $row[quantity_invoiced];
$unit_price = $row[unit_price];
$item_description = $row['item_description'];
$itemed = $results['item_description'];
echo $itemed;
$tx_data[] = [
"partnerRef" => $onum,
"lines" => $itemed
];
}
}
$flagupdate = "UPDATE `orders` SET proc = 'Y' where proc = 'N'";
myqueryi_query($conn, $flagupdate);
} else {
echo "no results";
}
echo json_encode($tx_data);
【问题讨论】:
-
这段代码充满了难以置信的问题和错误!你试过调试吗?
标签: php mysql json loops for-loop