dongmoxin7111 2018-08-14 15:17
浏览 22
已采纳

如何使用php动态回显日期范围搜索结果中列数据的总和?

I have a search feature that displays records from a database based on date range search. What I want to do is echo the total sum of the "refund_amount" column that is displayed after the date range search. I know how to get the total sum from all the records from the database. I need to echo only the sum of the "refund_amount" column that is being displayed after the date range search. Any help is greatly appreciated.

Here is my code:

<?php
  include('includes/connect.php');
  if (isset($_GET["status"])) { $status  = $_GET["status"]; } else { $status=0; };
  if (isset($_GET["d1"])) { $d1  = $_GET["d1"]; } else { $d1=0; };
  if (isset($_GET["d2"])) { $d2  = $_GET["d2"]; } else { $d2=0; };
  $result = $connect->prepare("SELECT * FROM rma_list WHERE refund_date BETWEEN :a AND :b");
  $result->bindParam(':a', $d1);
  $result->bindParam(':b', $d2);
  $result->execute();
  for($i=0; $row = $result->fetch(); $i++){
  ?>

  <tr class="record">
  <td><?php echo $row['rma_id']; ?></td>
  <td><?php echo $row['order_date']; ?></td>
  <td><?php echo $row['rma_request_date']; ?></td>
  <td><?php echo $row['rma_number']; ?></td>
  <td><?php echo $row['order_number']; ?></td>
  <td><?php echo $row['so_number']; ?></td>
  <td><?php echo $row['vendor_name']; ?></td>
  <td><?php echo $row['vendor_ra']; ?></td>
  <td><?php echo $row['customer_name']; ?></td>
  <td><?php echo $row['credit_memo_number']; ?></td>
  <td><?php echo $row['refund_amount']; ?></td>
  <td><?php echo $row['refund_date']; ?></td>
  <td><?php echo $row['status']; ?></td>
  </tr>



  <?php
  }
  ?>
  • 写回答

1条回答 默认 最新

  • dpcyx08288 2018-08-14 15:31
    关注

    To do this in PHP code

    <?php
    include('includes/connect.php');
    if (isset($_GET["status"])) { $status  = $_GET["status"]; } else { $status=0; };
    if (isset($_GET["d1"])) { $d1  = $_GET["d1"]; } else { $d1=0; };
    if (isset($_GET["d2"])) { $d2  = $_GET["d2"]; } else { $d2=0; };
    $result = $connect->prepare("SELECT * FROM rma_list WHERE refund_date BETWEEN :a AND :b");
    $result->bindParam(':a', $d1);
    $result->bindParam(':b', $d2);
    $result->execute();
    
    // initialise a variable for the counter
    $tot = 0;
    
    while ($row = $result->fetch(PDO::FETCH_ASSOC)){
    ?>
          <tr class="record">
              <td><?php echo $row['rma_id']; ?></td>
              <td><?php echo $row['order_date']; ?></td>
              <td><?php echo $row['rma_request_date']; ?></td>
              <td><?php echo $row['rma_number']; ?></td>
              <td><?php echo $row['order_number']; ?></td>
              <td><?php echo $row['so_number']; ?></td>
              <td><?php echo $row['vendor_name']; ?></td>
              <td><?php echo $row['vendor_ra']; ?></td>
              <td><?php echo $row['customer_name']; ?></td>
              <td><?php echo $row['credit_memo_number']; ?></td>
              <td><?php echo $row['refund_amount']; ?></td>
              <td><?php echo $row['refund_date']; ?></td>
              <td><?php echo $row['status']; ?></td>
          </tr>
    <?php
    
        // accumulate the amount in the new var
        $tot += $row['refund_amount'];
    }
    ?>
        <tr class="totals">
            <td colspan="10"> TOTAL Refund</td>
            <td><?php echo $tot; ?></td>
            <td colspan="2">&nbsp;</td>
        </tr>
    

    The table layout may need a little work, but I hope you get the idea from this code

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案