mi sa che il lavoro qua è appena all'inizio

provo a suggerire quindi, per fare il prossimo passo, una soluzione per completare la struttura database

Innanzitutto ti servirà una tabella dove schedare i files, quindi per esempio sulla falsariga di quelle che hai già creato:

tabella_files:
id
id_proprietario
nomefile
percorso
tipofile
pubblicato

e questa andrà compilata inserendo nel campo "id_proprietario" l'id corrispondente all'amministratore, ovviamente questo ha senso se ci sono più amministratori, altrimenti salta pari pari questo campo.
inoltre il campo "pubblicato" in fondo credo possa essere utile per nascondere un file a tutti quanti in una botta sola ma in maniera magari solo temporanea.
... ma torniamo alla struttura ...

creata la tabella dei files ora hai il "chi" e il "cosa", mancano i legami, suggerisco una struttura molti-a-molti, per esempio quindi

tabella_legami:
id
id_utente
id_file

e in questa tabella beh, mi sembra abbastanza chiaro cosa dovrai inserire.

A questo punto credo che la struttura db sia abbastanza completa, con una query su quest'ultima tabella dei legami, filtrata con id_utente dell'utente che si logga sulla pagina specifica per gli utenti, avrai l'elenco dei files che l'amministratore voleva condividere con quell'utente

Contemporaneamente sulla pagina di caricamento di un nuovo file suggerisco di stampare il risultato della select (completa) sulla tabella degli utenti, di modo che avrai magari un campo checkbox per ciascun utente, così sarà semplice poi andare a compilare la tabella legami.


come dicevo all'inizio, questo è solo il secondo passo, ma la strada è ancora lunga, il mio aiuto, spero utile, è solo una traccia, di lavoro ne hai ancora parecchio

bye !