comincio con l'inquadrare il problema:
ho creato un database che gestisce l'organizzazione e la struttura di un insieme di file. poi ho creato l'interfaccia web per accedere a questi file.
il database contiene i link ai file e la struttura in cui questi sono organizzati:
semplificando, ci sono diversi progetti, ad ogni progetto appartengono diversi sottogruppi di file e per ogni sottogruppo ci sono diversi file. molto semplificata la struttura è più o meno questa:
tabella progetti:
id_progetto
nome_progetto
descrizione
tabella_tipi_di dati
id_tipo_dato
id_progetto
nome_dato
tabella_path_file
id_file
id_tipo_dato
id_progetto
path_file
i file i cui link sono del database sono poi fisicamente in una cartella del forum, così che dall'interfaccia del database che ho creato l'utente può muoversi nella struttura ad albero dei dati e scaricare i file a cui è interessato.
per ora ho aggiornato io il database ma ora sto creando un interfaccia in php che permetta anche ad altri utenti (solo interni comunque) di aggiornare il database.
sto strutturando l'interfaccia in modo che l'utente possa caricare i file uno a uno:
per ogni file prima seleziona il progetto a cui appartiene o ne crea uno nuovo.
poi seleziona la sottocategoria a cui il file che vuole caricare appartiene o ne crea una nuova e infine fa l'upload.
lo script si occupa quindi di aggiornare il database con il link al nuovo file e tutti gli id relativi.
ma non avevo pensato ad un problema: i file purtroppo possono essere anche molto grandi, tipo 500M. ora, a parte il fatto che upload_max_filesize qui è impostato a 100M, comunque immagino che fare l'upload di file così grandi via php non abbia senso.
quindi dovrei far in modo che prima l'utente sposti i file in questione, via ssh ad esempio (come dicevo gli utenti sono solo interni), in una cartella apposita sul server, poi dovrebbe aprire l'interfaccia per inserire le informazioni relative ai vari file nel database. solo che ovviamente a questo punto il rischio di errori aumenta tantissimo perché dovrebbe inserire a mano i nomi dei file anziché selezionarli da un elenco come succede con l'upload di file.
sto cercando di pensare ad un po' di soluzioni ma per ora non me ne viene in mente nessuna che sembri sensata.
la domanda molto generale quindi è: voi come impostereste la faccenda?
grazie
![]()