Week 2 – Projectstructuur & Includes;

In week 2 zorg je dat je project overzichtelijk en professioneel wordt opgezet.
Je leert code hergebruiken en data gestructureerd opslaan.

Wat moet je kennen (samenvatting)

  • Scheiding van layout en logica
  • Werken met een includes/ map
  • include en require
  • Associative arrays ('key' => 'value')
  • Verschil tussen gewone arrays en associative arrays
  • Data uitlezen met $array['key']
  • Vooruitblik: fetch(PDO::FETCH_ASSOC)

1. Scheiding van layout en logica

Uitleg
Grote projecten worden onoverzichtelijk als alles in één bestand staat.
Daarom splits je herbruikbare onderdelen (header, nav, footer) uit in aparte bestanden.

Wat moet je kennen

  • HTML hergebruiken via includes
  • PHP bovenaan, HTML daaronder
  • Logische mappenstructuur

Voorbeeld

<?php
$paginaTitel = "Home";
include 'includes/header.php';
include 'includes/nav.php';
?>

<main>
  <h1><?= $paginaTitel ?></h1>
</main>

<?php include 'includes/footer.php'; ?>
Onthoud:

Structuur bespaart tijd en voorkomt fouten.

2. include vs require

Uitleg
Beide voegen een bestand toe.
require stopt het script als het bestand ontbreekt.
include geeft alleen een waarschuwing en gaat door.

Wat moet je kennen

  • include
  • require
  • Relatieve paden

Voorbeeld

include 'includes/footer.php';
require 'includes/db.php';
Onthoud:

Gebruik require voor essentiële bestanden (zoals je database connectie).

3. Associative arrays

Uitleg
Een gewone (reguliere) array gebruikt nummers als index:

$kleuren = ["rood", "blauw"];

Een associative array gebruikt namen (keys) in plaats van nummers.
Dit maakt je data duidelijk en leesbaar.

Wat moet je kennen

  • Verschil tussen $array[0] en $array['key']
  • 'key' => 'value'
  • Meerdere key-value paren

Voorbeeld

$games = [
    "game1" => "Zelda",
    "game2" => "Mario"
];

echo $games["game1"];
Onthoud:

Keys zijn labels voor je data.

4. Vooruitblik: fetch(PDO::FETCH_ASSOC)

Uitleg
Wanneer je data uit de database haalt kan je die op verschillende manieren terugkrijgen.
Elke manier heeft een voor- én nadeel.
Omdat jij nu net geleerd hebt wat een associative array is, gaan we de database vragen om het op deze manier naar ons project terug te sturen.
Daarom gebruiken we PDO::FETCH_ASSOC.

Wat moet je kennen

  • fetch(PDO::FETCH_ASSOC)
  • fetchAll(PDO::FETCH_ASSOC)

Voorbeeld

$item = $stmt->fetch(PDO::FETCH_ASSOC);
echo $item["title"];

Veelgemaakte fouten (kort)

1. Verkeerd pad bij include

include 'header.php';
include 'includes/header.php';

2. Associative array lezen met index

echo $games[0];
echo $games["game1"];

3. Alles in één bestand zetten

❌ Header, SQL en HTML door elkaar in index.php

✅ Gebruik aparte bestanden in includes/

Video

Uitleg volgt hier.