我有一个 mysql 表,保存我的购物车数组中的商品,例如item_id、尺寸、数量,每行都有一个订单号,所以如果我有 3 个商品,这三行的订单 id 为 2。还有另一个名为orders 的表,它保存这些商品的订单号和名称、地址等。我希望能够打印出每个订单号以及与该订单号匹配的商品,但是它会重复订单号并打印三次,无论如何我可以只有订单号:1 然后是 3下面的项目?
此查询确实打印出正确的信息,但显示 orderid 3 次
$sql = mysql_query("SELECT transactions.*, orders.orderid, orders.date
FROM transactions
LEFT JOIN orders
ON transactions.orderid=orders.orderid
WHERE orders.userid = '$userID'");
最佳答案
mysql_query 从技术上讲根本不显示任何内容。它只是从数据库中查询您的数据,并使其可以在本地访问以执行您想要的操作。 因此,您实际上必须更改内容的点是您的显示代码。它可能如下所示,可以按您的预期工作。
first = true;
while ($row = mysql_fetch_assoc($sql)){
if (first){
// put everything that shall only be written once here.
echo $row["orderid"];
first = false;
}
// put everything that shall be written for every row here.
echo $row["date"];
}
关于php - 仅打印一个订单号以及与该号码相关的商品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9350000/