Les 12 — Uploads, directories & images
$_FILES, restricties, unieke namen, directory listings — en veilig nadenken over uploads.
Demo
opdrachten/12/: upload_form*.html + upload_file*.php, unique_filename.php, read_dir1.php–read_dir3.php, image_info.php, create_image.php
Open demo-bron
Klik een bestandsnaam hieronder om de bron op deze pagina te zien (of “Nieuwe tab”). PHP zelf draait bij jou lokaal in XAMPP.
Gewone opdracht
Kern (stapsgewijs)
12/upload_form.html+12/upload_file.php— basis upload naar een mapupload/.- Voeg restricties toe (grootte, image-type, bestaat-bestandsnaam) zoals in upload_file2/3.
- Gebruik unieke filenaam (
uniqid+ extensie).
Extra / variant
Extra A Directory listing
Maak 12/read_dir2.php: listing van een map (bouw voort op read_dir1.php).
Extra B — Opdracht 30 Thumbnails
12/read_dir3.php: listing van upload-dir met thumbnail, afmeting, mime-type; klik opent image in nieuw venster. Gebruik getimagesize(). Hergebruik read_dir2-idee.
Extra C Security-notitie
In 12/upload-security.md: welke checks heb je gedaan en wat zou je in productie nog meer doen?
Opleveren
git add 12→ commit → push (geen grote binaries verplicht; .gitignore upload-map mag)- Mail: les 12 klaar of hulp + repo-link