嵌套的while循环不适用于mysql数据库查询

嵌套的while循环不适用于mysql数据库查询

我要实现的是创建一个包含订单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/

10-13 08:46