3 cose:

1. un upload con il form enctype form/data ecc
2. tabella in mysql con campo blob
3. pagina.php che invia il content-type del file salvato nella tabella + il file stesso

( questo ovviametne molto semplificiato e se vuoi mettere i file in mysql )