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)"];