I have the following data in MySQL table:
| emp_id | date | shift | 
|---|---|---|
| 1001 | 2022-08-01 | M | 
| 1001 | 2022-08-02 | M | 
| 1001 | 2022-08-03 | N | 
| 1002 | 2022-08-01 | M | 
| 1002 | 2022-08-02 | E | 
| 1002 | 2022-08-06 | M | 
Output should be like this (One Month list show):
| emp_id | 2022-08-01 | 2022-08-02 | 2022-08-03 | 2022-08-04 | 2022-08-05 | 2022-08-06 | 
|---|---|---|---|---|---|---|
| 1001 | M | M | N | 0 | 0 | 0 | 
| 1002 | M | E | 0 | 0 | 0 | M | 
My code is:
 <?php
for($j = 1; $j <=  date('t'); $j++)
{
$dat = str_pad($j, 2, '0', STR_PAD_LEFT). "-" . date('m') . "-" . 
date('Y');
$d[] = date('Y'). "-" . date('m') . "-" . str_pad($j, 2, '0', 
STR_PAD_LEFT);
$datess[] = str_pad($j, 2, '0', STR_PAD_LEFT)."<br>".date('D', 
strtotime($dat));
}
?>
<?php 
$link = mysqli_connect('localhost','root','','rostertest');
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
?>
<div class="table-responsive">          
  <table class="table">
    <thead>
      <tr>
<th>#</th>
<th>Employee</th>
<?php foreach($datess as $dates) {?>
<th>
    <?php echo $dates; ?>
</th>
<?php } ?>
</tr>
    </thead>
    <tbody id="tbl_body">
                
                <?php
                $i=0;
                $get_sql = "select * from ros";
                $run = mysqli_query($link,$get_sql);
                while($row = mysqli_fetch_array($run)){
                $date = $row['date'];
                $i++;
                ?>
                    <tr>
                    <td><?php echo $i; ?></td>
                    <td><?php echo $row['emp_id']; ?></td> 
                    <?php foreach($d as $da) { if($date==$da){?>
                    <td><?php echo $row['shift']; ?></td>
                    <?php }else{ ?>
                    <td><?php echo "0";?></td>
                    <?php }}?>
                    
                </tr>
                <?php }?>
            </tbody>
     </table>
    </div>
 
     
    