
We gaan nu even testen of onze database connectie werkt en of we gegevens uit de database kunnen halen.
Hiervoor voegen we aan onze controllers/home.php de code toe om de meest recente post uit de database op te halen.
<?php $db = new Database(); $post = $db->query("SELECT * FROM posts ORDER BY id DESC LIMIT 1")->fetch(); view("home", [ 'post' => $post, ]);
Verklaring:
We starten met PHP code
<?php
We maken een database object aan met variabele naam $db (kies hiervoor een logische naam)
$db = new Database();
We gebruiken onze database object om een query op de database uit te voeren. We selecteren in dit geval de meest recente "post" en stoppen dit in $result.
$post = $db->query("SELECT * FROM posts ORDER BY id DESC LIMIT 1")->fetch();
$post is nu een array met keys en values. De key's zijn de kolomnamen uit de tabel "posts" de values zijn de gegevens die bij de laatste "post" staan. De titel van de geselecteerde post is dan bv $post['title']
Daarna geven we de gegevens mee aan de view. In onze view zal nu $post als variabele bestaan.
PHP sluiten we alleen af als er nog andere code volgt. Anders laten we dit weg. Dus nu laten ?> kan weggelaten worden.
Uitwerking:
View home.view.php
We openen het bestand app/views/home.view.php en wijzigen de code in het volgende.
<?php view("parts/header", ['title' => 'home']); view("parts/navigatie-menu"); ?> <div class="sm:mx-10"> <h1 class="text-3xl my-4">Home</h1> <div class="border border-1 rounded p-4 bg-gray-50"> <h2 class="font-bold"><?= $post['title'] ?></h2> <?= $post['content'] ?> </div> </div> <?php view("parts/footer");
Verklaring:
Om het er een beetje uit te laten zien wordt tailwindcss gebruikt voor de opmaak.
- een rand die een beetje rond is border border-1 rounded
- padding van 4px p-4
- lichtgrijze achtergrond bg-gray-50
De gegevens uit de database worden getoond door
<?= $post['title'] ?>
Dit is een snel notatie voor
<?php echo $post['title']; ?>
Met als resultaat

Uiteraard mag je de opmaak ook zelf vormgeven. Probeer wat met de tailwindcss te spelen, zodat het eruit komt te zien als jij graag zou willen.
Uitwerking: