Week 7 – Sessions & Feedback;
In week 7 leer je hoe je tijdelijk data opslaat tussen pagina's.
HTTP is stateless: elke request staat op zichzelf. Sessions lossen dat op.
Wat moet je kennen (samenvatting)
- Wat stateless betekent
session_start()bovenaan je bestand- Data opslaan in
$_SESSION isset()controlerenunset()opruimen- Flash messages (set → redirect → show → unset)
1. Wat is stateless?
Uitleg
HTTP onthoudt niets tussen requests.
Zonder sessions weet je applicatie niet wat er eerder is gebeurd.
Wat moet je kennen
- Elke pagina is een nieuwe request
- Data gaat verloren zonder opslag
- Sessions onthouden tijdelijk data
Onthoud:
Zonder session_start() bestaat $_SESSION niet.
2. Session starten
Uitleg
Je moet een session starten voordat je$_SESSIONgebruikt.
Dit doe je helemaal bovenaan je PHP-bestand.
Wat moet je kennen
session_start();- Geen output vóór session_start()
Voorbeeld
<?php
session_start();
$_SESSION['success'] = "Item toegevoegd!";
header("Location: index.php");
exit;
Onthoud:
session_start() komt vóór alle HTML.
3. Flash message tonen
Uitleg
Een flash message is een tijdelijke melding.
Je toont hem één keer en verwijdert hem daarna.
Wat moet je kennen
isset()unset()- Melding tonen in HTML
Voorbeeld
<?php
session_start();
if (isset($_SESSION['success'])) {
echo "<p>" . $_SESSION['success'] . "</p>";
unset($_SESSION['success']);
}
?>
Onthoud:
set → redirect → show → unset.
Veelgemaakte fouten (kort)
1. session_start vergeten
❌
$_SESSION['success'] = "Gelukt!";
✅
session_start();
$_SESSION['success'] = "Gelukt!";
2. session_start onder HTML zetten
❌
<h1>Welkom</h1>
<?php session_start(); ?>
✅
<?php session_start(); ?>
<h1>Welkom</h1>
3. unset vergeten
❌ Melding blijft steeds terugkomen
✅ Na tonen meteen unset($_SESSION['success']);