<select id="prodi" name="product_names" style="padding:6px;">
<?php
$resultsTicket = $mysqli->query("SELECT
product_list.product_name,
product_package.size
FROM product_list
LEFT JOIN product_package
ON product_list.product_code = package.product_code
ORDER BY product_list.id ASC");
$orders = array();
if ($resultsTicket) {
while($obj = $resultsTicket->fetch_object()) {
$orders[$obj->size][$obj->product_name] = array(
'product_name' => $obj->product_name,
'size' => $obj->size,
'status' => $obj->status);
}
foreach ($orders AS $order_id => $order) {
foreach ($order AS $item => $data) {
echo '<option value="'.$obj->product_name.'">' . $data['product_name'] . '</option>';
}
}
echo '</select></div>';
echo '<div style="display:block; padding:6px; border: solid thin white;">
<span style="width:60px; display:inline-block; padding:6px;">Package</span>
<select name="packageInfi" style="padding:6px;">';
}
echo '<option value="">'.$order_id.'</option>';
echo '</select></div>';
?>
我要对上面的代码做的是根据已选择的产品名称获取尺寸/包
以下是我选择产品名称的地方:echo '<option value="'.$obj->product_name.'">' . $data['product_name'] . '</option>';
以下是根据上面选择的产品展示包装的地方:echo '<option value="">'.$order_id.'</option>';
但是,它不是根据已选择的产品显示包装,而是仅向我显示产品的最后一个包装。
以下是产品草图:
-------------------------------------------
no product_name product_code
-------------------------------------------
1 product_one 001
2 product_one 002
3 product_one 003
4 product_one 004
-------------------------------------------------
product_code package price
-------------------------------------------------
001 2kg 10
001 3kg 20
001 4kg 30
001 5kg 40
002 6kg 50
002 7kg 60
002 8kg 70
002 9kg 80
从第一张表中,我只想获取所有产品名称的数据,而从第二张表中我想获得每种产品的尺寸和价格。
答案 0 :(得分:0)
echo '<option value="'.$obj->product_name.'">' . $data['product_name'] . '</option>';
$obj->product_name
不在循环中。所以这就是你只获得最后一次的原因。我相信这也应该是$data['product_name']