Mogelijk gaat je prepare-statement mis, waarom zet je je query niet gewoon op meerdere regels in plaats van het gebruik van "\n"?
Hoe heb je je foutafhandeling ingesteld? In het algemeen: hoe heb je je opties ingesteld bij het maken van een verbinding met je database?
En heb je alles in een try-catch blok staan?
EDIT: fetchAll() retourneert waarschijnlijk een array van arrays, doe eens een var_dump van $page? Als je maar 1 resultaatrij verwacht kun je ook $statement->fetch(PDO::FETCH_ASSOC) oid gebruiken. Ook kan het verstandig zijn om te controleren of je uberhaupt resultaten hebt met PDOStatement::rowCount() maar zoals PHP.net zegt:
If the last SQL statement executed by the associated PDOStatement was a SELECT statement, some databases may return the number of rows returned by that statement. However, this behaviour is not guaranteed for all databases and should not be relied on for portable applications.
Ik had het al geprobeerd met fetchColumn, maar dan kan ik maar waarde eruit halen, terwijl ik dezelde rij in een variabele wil hebben....... maar... ik probeer even iets...