Opleiding: PHP MySQL E-Learning
Wil je PHP leren en server-side webontwikkeling beheersen? In deze driedaagse training bouw je dynamische websites met PHP en MySQL. Je leert basisconcepten zoals variabelen, loops en formulieren, maar ook geavanceerde onderwerpen zoals sessiebeheer, OOP en security. Via praktijkcases zoals een contactformulier met validatie en een eenvoudig CMS-systeem pas je de theorie direct toe.Wat leer je in deze training?
- PHP-basis – Syntax, controlestructuren en formulierverwerking.
- Databases & MySQL – CRUD-operaties, prepared statements en PDO.
- Sessies & cookies – Gebruikersbeheer en authenticatie.
- Objectgeoriënteerd programmeren – Klassen, methoden en overerving.
- Security best practices – SQL-injectie en XSS-preventie.
Deze training is ideaal voor beginners, frontend-developers en WordPress-ontwikkelaars die hun PHP-kennis willen verdiepen. Je werkt met Engelstalig lesmateriaal, praktijkgerichte opdrachten en moderne tools, ondersteund door een Nederlandstalige docent.
- Beginners die server-side webdevelopment willen leren.
- Frontend-developers die hun stack willen uitbreiden.
- WordPress-ontwikkelaars die dieper in PHP willen duiken.
- Backend-developers in opleiding (voor Laravel/Symfony).
- Installatie van PHP, XAMPP/MAMP, en een IDE (bijv. PHPStorm of VSCode).
- Syntax: variabelen, datatypes (string, int, float, bool, array, null).
- Operatoren: rekenkundig, vergelijking, logisch, concatenatie (.).
- Controlestructuren: if/elseif/else, switch, for, while, foreach.
- Formulierverwerking: $_GET, $_POST, inputvalidatie (basis).
- Functies: definiëren, parameters, return-waarden, typehinting (basis).
- Arrays: indexeerde en associatieve arrays, array_push(), array_filter(), array_map().
- Superglobals: $_SERVER, $_SESSION, $_COOKIE.
- Sessiebeheer: session_start(), gebruikersauthenticatie (basis).
- Bestandsafhandeling: fopen(), fwrite(), file_get_contents().
- MySQL-integratie: verbinding maken met mysqli of PDO.
- SQL-basis: SELECT, INSERT, UPDATE, DELETE, prepared statements.
- Databaseklasse bouwen: herbruikbare connectie en queries.
- Introductie OOP: klassen, objecten, methoden, eigenschappen.
- Security: basis van SQL-injectiepreventie, htmlspecialchars().
Programma:
- Basisconcepten en Syntax:
- Variabelen: $variabele, datatypes (string, int, float, bool, array, null, resource).
- Type Juggling en expliciete conversie: (int), (string), (array).
- Operatoren:
- Rekenkundig: +, -, , /, %, *.
- Vergelijking: ==, ===, !=, !==, >, <.
- Logisch: &&, ||, !, and, or.
- String-concatenatie: . en .=.
- Controlestructuren:
- if/elseif/else, switch met case/default.
- Loops: for, while, do…while, foreach (voor arrays).
- Formulierverwerking en Validatie:
- Superglobals: $_GET, $_POST, $_FILES (bestandsuploads).
- Input sanitization: trim(), stripslashes(), htmlspecialchars().
- Validatie: filter_var() met filters (FILTER_VALIDATE_EMAIL, FILTER_SANITIZE_STRING).
- Basis regex: preg_match() voor patroonvalidatie.
- Bestandsuploads: $_FILES-array, move_uploaded_file(), mime-type checks.
- Arrays en Functies:
- Array-types:
- Indexeerde arrays: $arr = [1, 2, 3];.
- Associatieve arrays: $assoc = ["naam" ⇒ "Jan", "leeftijd" ⇒ 30];.
- Array-functies: count(), array_push(), array_merge(), array_key_exists().
- Functies:
- Definities: function naam($param) { … }.
- Optionele parameters: default values (function tel($a, $b = 0)).
- Type declarations: function add(int $a, int $b): int.
- Anonieme functies en closures.
- Sessies en Cookies:
- Sessiestart: session_start(), $_SESSION-variabelen.
- Cookie-beheer: setcookie(), $_COOKIE, vervaldatums.
- Veiligheid: sessie-ID-regeneratie (session_regenerate_id()).
- Bestands- en Directorybeheer:
- Bestanden lezen/schrijven: file_get_contents(), file_put_contents().
- Directory-functies: scandir(), mkdir(), rmdir().
- Bestandspermissies: chmod(), is_readable().
- Database-integratie (MySQL):
- MySQLi:
- Verbinden: mysqli_connect().
- Queries: mysqli_query(), prepared statements (mysqli_prepare(), bind_param()).
- Resultaten ophalen: mysqli_fetch_assoc(), mysqli_fetch_all().
- PDO:
- Verbinden: new PDO("mysql:host=…;dbname=…", $user, $pass).
- Prepared statements: prepare(), execute(), fetch().
- Transacties: beginTransaction(), commit(), rollback().
- CRUD-operaties: Create, Read, Update, Delete.
- OOP (Objectgeoriënteerd Programmeren):
- Klassen en objecten: class Gebruiker { … }, new Gebruiker().
- Eigenschappen en methoden: public, private, protected.
- Constructor/destructor: construct(), destruct().
- Static methods/properties: self::$teller, static::methode().
- Overerving: extends, parent::__construct().
- Security Best Practices:
- SQL-injectie voorkomen: prepared statements (MySQLi/PDO).
- XSS-preventie: htmlspecialchars(), strip_tags().
- Wachtwoordhashing: password_hash(), password_verify().
- CSRF-tokens: basisimplementatie voor formulieren.
- Tools en Praktijkcases:
- Composer: package manager, composer.json, autoloading (PSR-4).
- PHPUnit: basis testcases schrijven.
- Praktijk:
- Contactformulier met validatie en e-mailverzending (mail()).
- Inlogsysteem met sessies en wachtwoordbeveiliging.
- Blog met database-CRUD en paginering.
- Bestandsbeheersysteem (upload/download/delete).
- Error Handling en Debugging:
- Foutmeldingen: error_reporting(), ini_set("display_errors", 1).
- Custom error handler: set_error_handler().
- Uitzonderingen: try/catch/throw new Exception().
- Logging: error_log(), logbestanden analyseren.
- Bereidt voor op het Zend PHP Certification Associate-examen.
- Basis voor vervolgtrainingen zoals Laravel of WordPress Development.
- Examen is extern af te leggen (niet inbegrepen).
€495
ex. BTW
Aangeboden door

@The Academy
Onderwerp
MySQL
PHP
Web Development
Niveau
Duur
90 dagen
Looptijd
24 dagen
Type product
training
Lesvorm
Klassikaal
Aantal deelnemers
Max: 12
Tijdstip
Overdag
Keurmerken aanbieder
CRKBO en BTW-vrijstelling
NRTO
Microsoft Learning Partner