row
ist ein assoziatives Array mit einem Eintrag für jede Spalte in der Ergebnismenge. Da es dort nur eine Spalte gibt, count($row)
gibt 1
zurück . Stattdessen sollten Sie nur auf die einzige Spalte dort zugreifen:
$row = $results->fetch_assoc();
$recordCount = $row["COUNT(id)"];