Prepared statements zijn voorgecompileerde SQL-queries met placeholders voor parameters. De database parseert en compileert de query eenmalig — daarna worden alleen de parameters ingevuld bij elke uitvoering. Voordelen zijn beveiliging (voorkomt SQL-injectie), betere performance bij herhaalde queries en leesbaarheid. Vrijwel alle database-libraries (PDO, MySQLi, JDBC) ondersteunen ze.
SQL Injection
A
Beveiliging
SQL Injection
SQL-injectie is een lek waarbij een aanvaller kwaadaardige SQL in invoer plaatst om ongeautoriseerde toegang te krijgen. Gevolgen zijn data uitlezen, wijzigen of verwijderen en authenticatie omzeilen. Preventie: prepared statements, inputvalidatie, escaping, een ORM en least-privilege rechten.
A
Beveiliging
ORM
AA
Database
Object-Relational Mapping
Een ORM mapt tabellen en rijen naar objecten en classes, zodat je via code met de database werkt in plaats van met SQL. Voordelen zijn abstractie, portabiliteit, security via prepared statements en productiviteit. Voorbeelden: Eloquent, Hibernate, SQLAlchemy en Sequelize. Nadelen zijn leercurve en wat overhead.
AA
Database
Mysqli
AAA
Database
MySQL Improved
MySQLi is de verbeterde PHP-extensie voor MySQL, opvolger van de oude mysql-extensie. Het ondersteunt prepared statements, meerdere statements, transacties en zowel object oriented als procedurele interfaces. Aanbevolen voor veilige MySQL-communicatie, maar gebruik bij voorkeur PDO voor database-abstractie over meerdere databases.
AAA
Database
Een uitgebreide collectie begrippen voor elk niveau
Van HTML & CSS tot databases en security
Geschikt voor beginners en gevorderden
Ideaal als lesmateriaal of teambuilding tool
Fysiek aan de slag, zonder scherm