Intermediate Projects
Prerequisites: Level 2 — Intermediate
Build these using OOP, Composer, PDO, and PHPUnit from Level 2.
1. Blog with a Real Database
Model Post and Comment classes backed by PDO + SQLite. Support
creating, listing, and deleting posts through simple HTML forms, with
prepared statements throughout.
2. REST API in Plain PHP
Using PHP's built-in server and $_SERVER['REQUEST_METHOD'] /
$_SERVER['REQUEST_URI'], build a small JSON API for a task list — GET,
POST, and DELETE endpoints backed by SQLite via PDO.
3. File Upload Handler
Build a form that uploads an image ($_FILES), validates its type and
size, stores it with a generated filename, and records the upload in a
database table.
4. Simple Login System
Build a registration/login flow using password_hash/password_verify
and sessions. Add a PHPUnit test suite covering the password hashing
logic in isolation.