# PHP-2 ## 1 Formulieren GET en POST [datasource](https://www.roc.ovh/books/software-development-2025/page/php-2) ### 🎯 Leerdoelen - Je weet wat `GET` en `POST` zijn. - Je kunt gegevens doorsturen van een formulier naar een PHP-bestand. - Je begrijpt het verschil tussen `GET` en `POST` qua werking en veiligheid. Weet je nog wat [formulieren zijn in PHP](https://www.roc.ovh/link/902#bkmrk-6-formulieren-in-html)? *Een formulier is een groep invoervelden in HTML. Deze velden wordne ingevuld en de waardes worden verstuurd naar een (meestal) andere pagina.* ### 💡 Uitleg Deze regel in een HTML form is belangrijk ```html
``` De `action `geeft aan **waar** het formulier de gegvens heen stuurt en de `method `geeft aan **hoe** deze gegevesn worden verstuurd. Bij een formulier kies je of je `GET` of `POST` gebruikt om gegevens naar de server te sturen:
MethodeKenmerkVoorbeeld
`GET`Gegevens worden zichtbaar in de URL (minder veilig)`mijn-actie.php?naam=Ali`
`POST`Gegevens worden onzichtbaar verstuurd (veiliger)De gegevens zitten in het HTTP-verzoek, niet in de URL
### 🎬Voorbeeld In dit voorbeeld wordt het formulier naar 'zichzelf' vertuurd. [https://www.youtube.com/watch?v=6AzAYU8AOhQ](https://www.youtube.com/watch?v=6AzAYU8AOhQ) ### 🛠️ Opdracht 1 – formulier.html (GET) 1. Maak een bestand `formulier.html` en zet daar deze code in: ```html

Wat is je naam?




``` Let op de `method="get"` en het attribuut `required`. ### 🛠️ Opdracht 2 – begroeting.php (GET) 1. Maak het bestand `begroeting.php` met de volgende PHP-code: ```php Hallo $naam!"; } else { echo "

Geen naam ingevuld.

"; } ?> ``` **Uitleg:** We controleren met `isset()` of de waarde bestaat. Vul het formulier in en kijk wat er gebeurt. Wat zie je op URL als je de begroeting ziet? Pas de tekst na het = teken op de url aan en reload je pagina, wat gebeurt er? ### 🛠️ Opdracht 3 – POST-versie maken 1. Pas in `formulier.html` het formulier aan naar: ```html
``` 2. Maak een nieuw bestand `begroeting2.php` met deze code: ```php Welkom, $naam (via POST)"; } else { echo "

Geen naam ontvangen.

"; } ?> ``` ### 🧠 Reflectie - Wat is het verschil tussen `POST` en `GET`? - Wat gebeurt er precies in het PHP-bestand als je op “Verstuur” klikt? - Wanneer zou je liever `POST` gebruiken dan `GET`? Geef een voorbeeld. ### 📤 Inleveren - Lever de post-versie in van het formulier (.html). - Beantwoord de drie reflectievragen en lever dit in als .txt of .pdf-bestand. ## 2 Include en Require ### **🎯** Leerdoelen - Je weet wat `include` en `require` doen in PHP. - Je kunt een header of footer inladen met `include`. - Je herkent het verschil tussen `include` en `require`. ### 💡 Uitleg Vaak gebruik je op meerdere pagina’s dezelfde stukjes HTML, zoals een menu of een footer. Je kunt dat opslaan in een apart bestand en invoegen met `include` of `require`. - `include "bestand.php"`: probeert het bestand in te laden. Als dat niet lukt, gaat de pagina wel gewoon verder. - `require "bestand.php"`: probeert het bestand in te laden. Als dat niet lukt, stopt de pagina met een fout. #### Voorbeeld: Stel, je maakt een bestand `header.php` met daarin een simpel menu: ```php

Mijn Website

``` En dan gebruik je `include` in een andere pagina: ```php

Welkom op de homepagina

Dit is de inhoud van index.php

``` ### 🎬Voorbeeld [https://www.youtube.com/watch?v=aU0Tqxgtid8](https://www.youtube.com/watch?v=aU0Tqxgtid8) ### 🛠️ Opdracht – Header en footer maken 1. Maak een bestand `header.php` met een kop en menu zoals hierboven. 2. Maak een bestand `footer.php` met daarin bijvoorbeeld: `` 3. Maak een bestand `index.php` met bovenin een `include("header.php")` en onderin een `include("footer.php")`. ### 🧠 Reflectie - Waarom is het handig om met `include` te werken? - Wanneer zou je liever `require` gebruiken? - Wat zou er gebeuren als je honderd pagina’s hebt zonder `include` te gebruiken? In welk geval zou dat onhandig zijn? ### 📤 Inleveren - Beantwoord de drie vragen n eigen woorden uit de reflectie en lever die in (.txt of .pdf bestand). ## 3 Arrays en Loops ### **🎯** Leerdoelen - Je weet wat een array is in PHP. - Je kunt een array maken met meerdere waarden. - Je kunt een `foreach`-loop gebruiken om alle items te tonen. ### 💡 Uitleg Een **array** is een soort lijstje waarin je meerdere dingen kunt bewaren, zoals hobby’s of namen. Een (gewone) variabele is plaats in get computergehuegen waarin je **één waarde** kan opslaan. Een array is een variabele die **meer dan één waarde** kan bevatten. ![image.png](https://www.roc.ovh/uploads/images/gallery/2025-06/scaled-1680-/MAdimage.png) Je gebruikt een `foreach`-loop om elk item uit de array één voor één te gebruiken. #### Voorbeeld: ```php Mijn hobby is: $hobby

"; } ?> ``` **Resultaat:** Mijn hobby is: voetbal Mijn hobby is: lezen Mijn hobby is: gamen ### 🎬Voorbeeld **Vanaf 0:30 -tot asan 06:30** [https://www.youtube.com/watch?v=D7mqV-p1kEc](https://www.youtube.com/watch?v=D7mqV-p1kEc) ### 🛠️ Opdracht – Eigen array Maak een bestand `lijst.php` en vul dit met een array van 5 dingen die jij leuk vindt (hobby’s, favoriete eten, games…). - Gebruik een `foreach`-loop om ze allemaal op het scherm te tonen. - Geef elk item weer in een eigen paragraaf (<p>). ### 💡 Uitleg Er is ook een ander soort loop; een for-loop. Gebruik een `for`-loop in plaats van `foreach`: ```php " . $i . " Favoriete game: " . $games[$i] . "

"; } ?> ``` De waarde van $games\[0\] is dus "Minecraft", $games\[1\] = "FIFA", etc, etc.

Het eerste element in een array heeft een index 0!

### 🛠️ Opdracht - deel 2 Plaats in de PHP-code (lijst.php) een eigen voorbeeld waarbij je een `for-loop` gebruikt. ### 🧠 Reflectie - Wat is het voordeel van een array ten opzichte van losse variabelen? - Wat is het verschil tussen `for` en `foreach`? - Wanneer zou je liever een `for`-loop gebruiken? ### 📤 Inleveren - Lever een screenshot in van jouw `lijst.php` met minimaal 5 items in een array, getoond in de browser. - Laat zien dat je zowel `foreach` als `for` gebruikt hebt. ## 4 Loops met indexed arrays ### 🎯 Leerdoelen - Je weet wat een indexed array is in PHP. - Je kunt een array maken en vullen met meerdere waarden. - Je kunt met een `foreach`-loop door een array lopen. - Je kunt gegevens uit een array weergeven met `echo`. ### 💡 Uitleg Een **indexed array** is een lijst waarbij elk element een nummer (index) heeft, beginnend bij 0. Bijvoorbeeld: ```php ``` Met een `foreach`-loop kun je door deze array heen lopen en elk item laten zien: ```php $product

"; } ?> ``` ### 🛠️ Opdracht – Winkelmandje weergeven **Situatie:** Je bouwt een simpele webwinkel. Je hebt een lijst met producten die iemand in zijn winkelmandje heeft geplaatst. Jij zorgt dat de producten netjes op het scherm getoond worden met behulp van een array en een loop. 1. Maak een nieuw bestand aan met de naam `winkelmandje.php`. 2. Maak een indexed array met minimaal 5 producten uit een supermarkt (bijv. "Brood", "Melk", ...). 3. Gebruik een `foreach`-loop om de lijst als HTML-lijst (`