<?php
if(isset($_SESSION['role'])) {
$role=$_SESSION['role'];
}
if(isset($_POST["fdate"])) {
$fdate=$_POST["fdate"];
$_SESSION['fdate']=$fdate;
} else if(isset($_SESSION['fdate'])) {
$fdate=$_SESSION['fdate'];
}
$todate='';
if(isset($_POST["todate"])) {
$todate=$_POST["todate"];
$_SESSION['todate']=$todate;
} else if(isset($_SESSION['todate'])) {
$todate=$_SESSION['todate'];
}
//$_SESSION["sql"]=$sql;
$begin = new DateTime($fdate. " 00:00:00");
$end = new DateTime($todate. " 23:59:59");
$interval = DateInterval::createFromDateString('1 day');
$period = new DatePeriod($begin, $interval, $end);
$_SESSION["fdate"]=$fdate;
$_SESSION["todate"]=$todate;
foreach ( $period as $dt ) {
$new=$dt->format("y-m-d");
$profit_detail=mysql_query("select * from project_detail where date like '%".$new."%' group by project_id ");
$old_value='0';
$new_value='0';
$value='0';
$balance='0';
while($row=mysql_fetch_array($profit_detail)) {
?>
<tr bgcolor="#FFFFFF">
<td><?php echo $row["date"];?></td>
<td><?php echo $row["companyname"];?></td>
<td><?php echo $row["project_name"];?></td>
<td><?php echo $row["amount_given"];
$old_value=$old_value+$row["amount_given"];?></td>
<td><?php echo $row["total_amount"]; $new_value=$new_value+$row["total_amount"];?></td>
<td><?php echo $value=$value+$row["blank"]?></td>
</tr>
<?php
}
}
$balance=$old_value-$new_value;
?>
<tr bgcolor="#FFFFFF">
<td>Total</td>
<td></td>
<td></td>
<td><?php echo $old_value;?></td>
<td><?php echo $new_value;?></td>
<td><?php echo $balance;?></td>
</tr>
</tbody>
</table>
</div>
我想总计两个选定日期之间的总金额,但问题是我选择日期并显示结果金额总和仅当前日期金额总和 我的SQL查询或日期问题在哪里出现问题,如果发布日期,那么显示的金额和详细信息都显示在我的输出链接https://ibb.co/k9yj8v
答案 0 :(得分:0)
您正在重新初始化循环中的值
//Add this before foreach
$old_value='0';
$new_value='0';
$value='0';
$balance='0';
foreach ( $period as $dt )
{
$new=$dt->format("y-m-d");
$profit_detail=mysql_query("select * from project_detail where date like '%".$new."%' group by project_id ");
while($row=mysql_fetch_array($profit_detail))
{
?>
<tr bgcolor="#FFFFFF">
<td><?php echo $row["date"];?></td>
<td><?php echo $row["companyname"];?></td>
<td><?php echo $row["project_name"];?></td>
<td><?php echo $row["amount_given"];
$old_value=$old_value+$row["amount_given"];?></td>
<td><?php echo $row["total_amount"]; $new_value=$new_value+$row["total_amount"];?></td>
<td><?php echo $value=$value+$row["blank"]?></td>
</tr>
<?php
}
}
$balance=$old_value-$new_value;
?>
<tr bgcolor="#FFFFFF">
<td>Total</td>
<td></td>
<td></td>
<td><?php echo $old_value;?></td>
<td><?php echo $new_value;?></td>
<td><?php echo $balance;?></td>
</tr>
</tbody>
</table>
</div>