# Kennis Check Blok 7

## Kennis Check blok 7

[datasource](https://www.roc.ovh/books/software-development-2025/page/kennis-check-blok-7)

### Oefenen

Kan jij de volgende vragen beantwoorden?

<details id="bkmrk-hoe-werken-foutmeldi"><summary>Hoe werken foutmeldingen in PHP op een (productie)server zoals Plesk?</summary>

Op productie staan een optie `display_errors` meestal uit en worden fouten **gelogd** i.p.v. **getoond**.  
  
PHP schrijft ze naar de **errorlog** van je server; zo blijft *gevoelige* informatie verborgen voor bezoekers.

</details><details id="bkmrk-is-er-een-verschil-t"><summary>Is er een verschil tussen foutmeldingen in XAMPP en op de productieserver? Waarom?</summary>

Ja. In XAMPP (ontwikkelomgeving) staan foutmeldingen vaak zichtbaar aan zodat je ze in de browser ziet waardoor je sneller kunt debuggen.  
  
Op productie zijn de foutmeldingen verborgen en wordt er gelogd om geen technische details te lekken en de veiligheid en stabiliteit te waarborgen.

</details><details id="bkmrk-hoe-lees-je-een-php-"><summary>Hoe lees je een PHP-foutmelding uit in de Plesk-omgeving?</summary>

Kijk zelf even in je eigen Plesk omgeving waar dat staat!

</details><details id="bkmrk-wat-is-een-ssl-certi"><summary>Wat is een SSL-certificaat?</summary>

Een SSL/TLS-certificaat is een digitaal certificaat dat de verbinding tussen browser en server versleutelt (HTTPS) en de identiteit van de website bevestigt. Het voorkomt **afluisteren** en manipulatie van verkeer en toont het “slotje” in de adresbalk.  
  
<span style="background-color: rgb(251, 238, 184);">Let op: het slotje en het certificaat zegt niet de site betrouwbaar is! Ik kan als Hacker namelijk ook een certificaat maken!</span>

</details><details id="bkmrk-waarvoor-gebruik-je-"><summary>Waarvoor gebruik je FTP?</summary>

Met FTP upload je bestanden naar je server, pas je ze aan of haal je ze op.

Je kan FTP dus gebruiken om je eigen website van bijvoorbeeld je laptop op een server te zetten.

</details><details id="bkmrk-wat-is-een-hostname%3F"><summary>Wat is een hostname? Geef een voorbeeld.</summary>

Een hostname is de (DNS)naam van een server of dienst op het netwerk. Voorbeelden: `ftp.jouwdomein.nl`, `mail.jouwdomein.nl` of `mysql.jouwdomein.nl`.

</details><details id="bkmrk-wat-is-de-standaard-"><summary>Wat is de standaard gebruikersnaam en het wachtwoord voor database-toegang op je laptop (via XAMPP)?</summary>

Standaard is de MySQL/MariaDB-gebruiker `root` met een leeg wachtwoord (`''`) en host `localhost`. Dit is alleen bedoeld voor lokaal gebruik.

</details><details id="bkmrk-waarom-is-dit-anders"><summary>Waarom is dit anders op een productieserver?</summary>

Op productie gelden veiligheidsregels: elke app heeft een eigen databasegebruiker met een sterk wachtwoord en minimale rechten (least privilege). Wachtwoorden zijn nooit leeg en worden niet gedeeld tussen apps.

Als je bijvoorbeeld de database gebruikersnaam 'root' zou gebruiken op een server dan maak je het een hacker wel erg makkelijk!

</details><details id="bkmrk-hoe-zorg-je-dat-php-"><summary>Hoe zorg je dat PHP op de productieserver je database-gegevens kent?</summary>

Je hebt ergens in één bestand de gebruikersnaam en wachtwoord opgeslagen, bijvoorbeeld in **connection.php**. Pas dit bestand aan op de productieserver.

Waarom is het belangrijk dat de usernaam en het wachtwoord in (maar) één bestand staan?

</details><details id="bkmrk-wat-is-een-cms%2C-in-s"><summary>Wat is een CMS, in simpele woorden?</summary>

Een CMS is een programma om makkelijk een website te maken en te beheren. Je maakt pagina’s, voegt plaatjes toe en maakt menu’s – meestal zonder te programmeren. Voorbeelden: WordPress, Drupal, Joomla.

</details><details id="bkmrk-welke-gegevens-vul-j"><summary>Welke gegevens vul je in bij de lokale WordPress-installatie?</summary>

Database­naam (die jij maakte), gebruikersnaam `root`, wachtwoord leeg laten, host `localhost`, tabelvoorvoegsel `wp_`. Verder kies je een site-titel en maak je je eigen inlog­gegevens aan.

</details><details id="bkmrk-hoe-log-je-in-op-de-"><summary>Hoe log je in op de backend (beheer) van je lokale WP site?</summary>

Ga naar `http://localhost/wp-jouwnaam/wp-admin`. Daar log je in met de gebruikersnaam en het wachtwoord die je tijdens de installatie hebt gekozen.

</details><details id="bkmrk-wat-is-het-verschil-"><summary>Wat is het verschil tussen frontend en backend in Wordpress?</summary>

De *frontend* is wat bezoekers zien (de website zelf). De *backend* is het beheergedeelte waar jij pagina’s, menu’s en instellingen aanpast. Ingelogd kun je bovenin met de zwarte admin-balk snel wisselen.

</details><details id="bkmrk-wat-is-yii-%28in-simpe"><summary>Wat is Yii (in simpele woorden)?</summary>

Yii is een PHP-framework: een doos met bouwblokken om snel een webapp te maken. Handig, want je krijgt veel standaard dingen (zoals inloggen en CRUD) bijna gratis. Het past goed bij je examenopdracht.

</details><details id="bkmrk-wat-betekent-mvc%3F-m-"><summary>Wat betekent MVC?</summary>

M = Model: praat met de database.  
V = View: wat je ziet (HTML/CSS).  
C = Controller: beslist wat er gebeurt als je klikt of naar een pagina gaat.

</details><details id="bkmrk-wat-is-composer%3F-com"><summary>Wat is Composer?</summary>

Composer is een installer voor PHP. Je kunt er dus PHP-dingen mee installeren. Omdat Yii in PHP is gemaakt, gebruik je dus Composer om Yii te installeren.

</details><details id="bkmrk-hoe-start-je-de-ontw"><summary>Hoe start je de ontwikkelserver van Yii?</summary>

Open het project in VS Code, start een terminal en typ: **`php yii serve`**. Je site draait dan op `http://localhost:8080`. Laat XAMPP aan voor de database.

</details><details id="bkmrk-waar-zet-je-de-datab"><summary>Waar zet je de database-gegevens (en welke host gebruik je lokaal)?</summary>

In **`config/db.php`**.

Gebruik lokaal meestal: db-naam `world`, user `root`, wachtwoord leeg, en **host `127.0.0.1`** (dus niet `localhost`).

</details><details id="bkmrk-wat-is-gii-en-wat-ku"><summary>Wat is Gii en wat kun je ermee?</summary>

Gii is de generator van Yii. Daar maak je eerst een *model* van je tabel en daarna klik je een complete *CRUD* bij elkaar. Je vindt Gii op `http://localhost:8080/gii`.

</details><details id="bkmrk-wat-is-routing-in-yi"><summary>Wat is routing in Yii? Geef één voorbeeld.</summary>

Routing vertaalt een URL naar een controller en actie. Voorbeeld: `/country/index` gaat naar `CountryController` → `actionIndex()`.

</details>### 🛠️ Opdracht

Maak de kennis-check.

### 📤 Inleveren

Aan het einde van de kennis-check ontvang je een certificaat. Maak een schermafdruk en lever deze in.