'; echo 'Task Name'; // Header row for task names // Create header row for dates for ($day = 1; $day <= $daysInMonth; $day++) { echo '' . $day . ''; } echo ''; // Loop through task names and display data foreach ($task_names as $taskId => $taskName) { echo '' . $taskName . ''; // Task name cell // Loop through each day's value for the task for ($day = 1; $day <= $daysInMonth; $day++) { $dateToFetch = $start_year . '-' . $start_month . '-' . sprintf("%02d", $day); $value = ''; // Default value if no data found for the date // Fetch values for each task from the database $values_sql = "SELECT * FROM task_master_status WHERE task_id = $taskId AND task_date = '$dateToFetch'"; error_log("value query " . $values_sql); $values_result = mysqli_query($conn, $values_sql); if ($values_result && $row = mysqli_fetch_assoc($values_result)) { $value = $row['status'] == 'on' ? 'C' : 'P'; } echo '' . $value . ''; } echo ''; } echo ''; echo '
Note: C = Completed, P = Pending
'; ?>