<?php
	 include('connection.php');
	if(ISSET($_POST['search'])){
		$date1 = date("Y-m-d", strtotime($_POST['date1']));
		$date2 = date("Y-m-d", strtotime($_POST['date2']));
		$query=mysqli_query($conn, "Select * from project_transations WHERE ProjectName ='" . $_GET['Id'] . "' AND `PaymentDate` BETWEEN '$date1' AND '$date2'") or die(mysqli_error());
		$row=mysqli_num_rows($query);
		if($row>0){
			while($fetch=mysqli_fetch_array($query)){
?>
	<tr>
		<td ><?php echo $fetch ['Id']; ?></td>	
		
		<td><?php echo $fetch ['PaymentDate']; ?></td>
		
		<td ><?php echo $fetch ['Amount']; ?></td>
		<td ><?php echo $fetch ['Remarks']; ?></td>
	</tr>
	
	
	
<?php
			}
		}else{
			echo'
			<tr>
				<td class="alert-info" colspan = "5"><h3 style="font-weight:bold; text-align: center;"><center ><svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" fill="currentColor" class="bi bi-calendar-x-fill" viewBox="0 0 16 16">
  <path d="M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM6.854 8.146 8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708z"/>
</svg> Record Not Found!</center></h3></td>
			</tr>';
		}
	}else{
		$query=mysqli_query($conn, "Select * from project_transations WHERE ProjectName ='" . $_GET['Id'] . "'") or die(mysqli_error());
		while($fetch=mysqli_fetch_array($query)){
?>
	<tr>
		<td ><?php echo $fetch ['Id']; ?></td>	
		
		<td><?php echo $fetch ['PaymentDate']; ?></td>
		
		<td ><?php echo $fetch ['Amount']; ?></td>
		<td ><?php echo $fetch ['Remarks']; ?></td>
	</tr>
<?php
		}
	}
?>
<div><h4>
<?php
include('connection.php');
	if(ISSET($_POST['search'])){
		$date1 = date("Y-m-d", strtotime($_POST['date1']));
		$date2 = date("Y-m-d", strtotime($_POST['date2']));
		$sql = "SELECT  SUM(Amount) from project_transations WHERE ProjectName='" . $_GET['Id'] . "'AND `PaymentDate` BETWEEN '$date1' AND '$date2'";
		$result = $conn->query($sql);
		//display data on web page
		while($row1 = mysqli_fetch_array($result)){
		echo " Total Amount : ". $row1['SUM(Amount)']." Tk";
		echo " Of Filtter Date From $date1 To $date2";
		}
	}
	
?>
</h4>
</div>
