我要实现的是创建一个包含订单ID和相关产品信息的表。如果一个订单ID包含多个产品,则该订单ID在第一行应仅打印一次,而对于其他行,则应仅在第二列开始显示产品信息。
我尝试了将近两个小时来解决这个问题,但找不到解决方案。下面是代码:
$query3= "select orderid from orders_main where userid=$cus_id";
$results3= mysql_query($query3);
while ($row = @ mysql_fetch_array($results3))
{
echo "<tr>";
echo "<th width:17%>".$row["orderid"]."</th>";
$temporderid=$row["orderid"];
$query2 = "SELECT product_name, quantity, subtotal from orders where orderid='$temporderid'";
$result2 = mysql_query($query2);
while ($row2 = @ mysql_fetch_array($result2))
{
echo "<th width:35%>".$row2["product_name"]."</th>";
echo "<th width:13%>".$row2["subtotal"]."</th>";
echo "<th width:22%></th>";
echo "</tr>";
echo "<th></th>";
}
}
echo "</table>";
}
发生的情况是它仅打印订单ID,而不打印任何产品信息。任何帮助表示赞赏。
最佳答案
错别字:
$result2 = mysql_query($query2);
^---no S
while ($row2 = @ mysql_fetch_array($results2))
^--- S
如果您不使用tha @#%@#%@#$$$#@@#$%@#$ @#
@
错误抑制运算符,那么您将获得“试图从...提取”的功能。错误。切勿使用该moronic操作员。特别是在您无法使代码正常工作时。您所做的等同于用手指塞住您的听觉并高喊“拉拉拉拉听不到您的声音……”。
关于php - 嵌套的while循环不适用于mysql数据库查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20273106/