sql >> データベース >  >> RDS >> Mysql

X行数の後にテーブルを分割し、Whileループにテキストを追加する(TCPDFを使用)

    必要なのは単純なループカウンターだけです:

    $tbl = '';
    $counter = 0;
    
    // foreach item in your array...
    $counter++;
    if ($counter > 9) {
        $pdf->AddPage();
        $counter = 0;
    }
    $tbl .= '
    

    編集:ループしている方法をリファクタリングしたいと思うかもしれませんが、今書いているように、解決策は次のとおりです:

    $result = mysqli_query($con,"SELECT * FROM b_sale_basket WHERE ORDER_ID=$ID ORDER BY     PRICE * QUANTITY DESC");
    
    $total=0;
    $counter = 0;  //implement a counter
    while($row = mysqli_fetch_array($result))
    {
    $counter++; //increment the counter on each loop
    
    $quantity = $row['QUANTITY'];
    $description = $row['NAME'];
    $unitprice = $row['PRICE'];
    $lineprice = $row['PRICE']*$row['QUANTITY'];
    $total=$total+$lineprice;
    
    $tbl_header = '<table style="width: 650px;" cellspacing="0" cellpadding="5">';
    $tbl_footer = '</table>';
    $tbl = '';
    
    $tbl .= '
    <tr>
        <td style="width: 50px; text-align: left; border-bottom: 0.1em solid #808080;"><p style="color:#808080;">'.number_format($quantity,0).'</p></td>
        <td style="width: 350px; border-bottom: 0.1em solid #808080;"><p style="color:#808080;">'.$description.'</p></td>
        <td style="width: 125px; text-align:right; border-bottom: 0.1em solid #808080;"><p style="color:#808080;">'.number_format($unitprice,2).'</p></td>
        <td style="width: 125px; text-align:right; border-bottom: 0.1em solid #808080;" align="right" ><p style="color:#808080;">'.number_format($lineprice,2).'</p></td>
    </tr>
    ';
    
    if ($counter > 9) {
        $pdf->AddPage();
        $counter = 0;
    }
    
     $pdf->writeHTML($tbl_header . $tbl . $tbl_footer, true, false, false, false, '');
    



    1. Oracle11gの更新後にトリガーを介して値を更新する

    2. アプリケーションでのWhere式の重複を排除

    3. docker-compose:サーバーがクライアントに不明な認証方法を要求しました

    4. if(select count(column)from table)> 0 then