Sikker filopplasting med MIME-sjekk og privat lagringsbane
En praktisk guide til trygg opplasting av profilbilder og dokumenter uten å stole på filnavn fra brukeren.
Du trenger:
PHP 8+, $_FILES, finfo, filsystem
Sikker filopplasting med MIME-sjekk og privat lagringsbane
En praktisk guide til trygg opplasting av profilbilder og dokumenter uten å stole på filnavn fra brukeren.
Målet med tutorialen
Målet er ikke bare å få koden til å virke, men å bygge en løsning som tåler videreutvikling i et ekte CMS/controlpanel.
Arbeidsflyt
- Start med tydelig inputvalidering.
- Hent autoritative data fra databasen, ikke fra skjulte skjema-felt.
- Returner forutsigbare svar til UI-laget.
- Logg feil internt og vis trygg melding eksternt.
WEBoracle-prinsipp
Koden bør kunne flyttes inn i en modul senere uten at den må skrives om fra bunnen. Skill derfor validering, databasekall og presentasjon tydelig.
Kontrollspørsmål før produksjon
- Er alle POST-kall beskyttet?
- Er rettigheter kontrollert i backend?
- Er feilmeldinger trygge?
- Er databasefelt og indeksbruk sjekket i MySQL Workbench?