如何在while循环中重复整个表

时间:2013-12-09 06:19:14

标签: php mysql while-loop repeat

我有一个代码在循环时重复行,但是如何在while循环中重复整个表。 代码是

    $kandivli = mysql_query("SELECT ps_order_detail.product_name, sum(ps_order_detail.product_quantity) AS product_total FROM ps_order_detail JOIN ps_product ON ps_product.id_product = ps_order_detail.product_id JOIN ps_orders ON ps_orders.id_order = ps_order_detail.id_order WHERE ps_product.id_supplier = '" . $supplier_number . "' && ps_orders.current_state = '" . $status1 ."' && ps_order_detail.id_shop = 1 GROUP BY ps_order_detail.product_name");
    $ktotal = mysql_query("SELECT sum(ps_order_detail.product_quantity) AS product_total FROM ps_order_detail JOIN ps_product ON ps_product.id_product = ps_order_detail.product_id JOIN ps_orders ON ps_orders.id_order = ps_order_detail.id_order WHERE ps_product.id_supplier = '" . $supplier_number . "' && ps_orders.current_state = '" . $status1 ."' && ps_order_detail.id_shop = 1");
    $krow = mysql_fetch_array($ktotal);
    $kftotal = $krow['product_total'];
    if(mysql_num_rows($kandivli) > 0)
    {
    echo '<table border="1" align="center" class="total">';
    echo "<th>&nbsp; Product Name &nbsp;</td><th> &nbsp;Total Quantity &nbsp;</th>";


    while($kandivlirow = mysql_fetch_array($kandivli))
    {
    $kandivli_product = $kandivlirow['product_name'];
    $kandivlitotal = $kandivlirow['product_total'];
    echo '<tr>';

    echo "<td align='center'>$kandivli_product</td><tdalign='center'>$kandivlitotal</td>";
    echo '</tr>';
    }
    echo "<td align='center'><b>Total</b></td><td align='center'><b>$kftotal</b></td>";
    echo '</table>';
    }
    else echo "<div align='center'>No Pending orders</div>";
    ?>

现在我只有5家商店,但如果我每次都需要复制粘贴并将此代码更改为&amp;&amp; ps_order_detail.id_shop = 6然后&amp;&amp; ps_order_detail.id_shop = 7等等

所以,如果有人展示如何重复表格,请。会很感激。 希望我的问题很明确。 (我想重复整个表格) 此致

阿莫德

好的我编辑了代码现在我按预期得到了6个表,但行显示的是第一个商店的数据。

    <?php
session_start();
include_once "connect.php";
?>
<?php



$supplier = mysql_query("SELECT ps_order_detail.product_name, sum(ps_order_detail.product_quantity) AS product_total, ps_supplier.name FROM ps_order_detail JOIN ps_product ON ps_product.id_product = ps_order_detail.product_id JOIN ps_supplier ON ps_supplier.id_supplier = ps_product.id_supplier JOIN ps_orders ON ps_orders.id_order = ps_order_detail.id_order WHERE ps_orders.current_state = 4 GROUP BY ps_order_detail.id_shop");



$alltotal = mysql_query("SELECT sum(ps_order_detail.product_quantity) AS producttotal FROM ps_order_detail JOIN ps_product ON ps_product.id_product = ps_order_detail.product_id JOIN ps_orders ON ps_orders.id_order = ps_order_detail.id_order WHERE ps_orders.current_state = 4 && ps_order_detail.id_shop = 11");

$ct = mysql_fetch_array($alltotal);

$ct1 = $ct['producttotal'];



while($supplierrow = mysql_fetch_array($supplier))
{
$kandivli = mysql_query("SELECT ps_order_detail.product_name, sum(ps_order_detail.product_quantity) AS product_total,ps_supplier.name FROM ps_order_detail JOIN ps_product ON ps_product.id_product = ps_order_detail.product_id JOIN ps_supplier ON ps_supplier.id_supplier = ps_product.id_supplier JOIN ps_orders ON ps_orders.id_order = ps_order_detail.id_order WHERE ps_orders.current_state = 4 GROUP BY ps_order_detail.product_name");
echo '<table border="1" align="center" class="total">';

while($kandivlirow = mysql_fetch_array($kandivli))
{

$sup = $kandivlirow['name'];
$sp = $kandivlirow['product_name'];
$spt = $kadivlirow['product_total'];
echo '<tr>';
echo "<td align='center'>$sp</td><td align='center'>$spt</td><td align='center'>$sup</td>";
echo '</tr>';
}

echo '</table>';
echo '<br>';
}
echo "<td align='center'><b>Total</b></td><td align='center'><b>$ct1</b></td>";
?>

1 个答案:

答案 0 :(得分:0)

 while($kandivlirow = mysql_fetch_array($kandivli))
    {
    //Your table code 
   echo '<table border="1" align="center" class="total">';
  //Middle section 
   echo '</table>';

    }