codice:
// Query per il conteggio dei nuovi badge e duplicati
$countQuery = "SELECT
                       rilascioper, COUNT(*) AS count
FROM badge
WHERE iddip = :iddip
GROUP BY rilascioper";
$countStatement = $pdo->prepare($countQuery);
$countStatement->bindParam(':iddip', $iddip, PDO::PARAM_INT);
$countStatement->execute();

while ($countRow = $countStatement->fetch(PDO::FETCH_ASSOC)) {
if ($countRow['rilascioper'] === 'NUOVO BADGE') {
$total_nuovi_badge = $countRow['count'];
        } elseif ($countRow['rilascioper'] === 'DUPLICATO') {
$total_duplicati = $countRow['count'];
        }
    }


$total_badge = $total_nuovi_badge + $total_duplicati;
$nomeCompleto = "{$info['cognome']} {$info['nome']}";
$dataOdierna = date('d/m/Y');
$dettaglioBadge = "Al dipendente $nomeCompleto, alla data del $dataOdierna, sono stati rilasciati N° $total_nuovi_badge Badge Ex Novo - N° $total_duplicati Badge Duplicati - per un totale di N° $total_badge Badge.";


echojson_encode([
'data' => $fetchdata['data'],
'pagina' => $pagina,
'totalPages' => ceil($totalRecords / $badgePerPage),
'totalRecords' => $totalRecords,
'total_nuovi_badge' => $total_nuovi_badge,
'total_duplicati' => $total_duplicati,
'total_badge' => $total_badge,
'dettaglioBadge' => $dettaglioBadge
    ], JSON_UNESCAPED_UNICODE);
} catch (PDOException$e) {
error_log("Errore durante l'esecuzione della query: ".$e->getMessage());
echojson_encode(['error' => 'Si è verificato un errore nel server.'], JSON_UNESCAPED_UNICODE);
}
?>