Come posso consentire all'utente di selezionare più di un file per il caricamento?
Domanda
Gmail ha appena rilasciato un aggiornamento alla sua interfaccia che consente all'utente di selezionare più di un file per il caricamento utilizzando il pulsante CTRL. Come lo fanno? Puoi leggere la nuova funzione e vedere una schermata qui:
http: //gmailblog.blogspot .com / 2009/02 / aggiornamenti-a-attacchi-multi-select-and.html
Soluzione
Dovrai trovare sollution basato su flash, come ha fatto Google con Gmail. Puoi provare questo plugin jQuery che offre esattamente questo: jQuery File Upload Plugin
Altri suggerimenti
Ecco una buona libreria che ho usato: SWFUpload
Naturalmente questa è una libreria JavaScript e non un plug-in jQuery , che lo rende molto più portatile.
Dai un'occhiata a RFC 1867 Definisce come caricare file su HTTP usando la codifica multipart / mista. Puoi utilizzare la libreria FileUpload di Apache Commons per farlo in Java. Non so come lo fa Google, ma puoi gestire le selezioni multiple con l'elaborazione JavaScript nella tua pagina.
Non con il metodo utilizzato da Gmail, ma il seguente collegamento, combinato con alcuni jquery, consente di caricare contemporaneamente un numero illimitato di file: Link
Google non sta usando Flash, ma in realtà un javascript intelligente (beh, questo è quello che sembrano tutti :-)). Utilizzando JavaScript e CSS, è possibile creare un selettore file che consente all'utente di selezionare il file da caricare. Quindi, usi un iframe nascosto. L'atto di pubblicare il modulo con il tuo file di caricamento ha come target l'iframe nascosto in modo che il risultato restituito dal server in caso di successo vada nell'iframe nascosto. Usando javascript, controlla il corpo del documento di quell'iframe per sapere quando il file viene caricato.
Questo link sembra essere un rapido esempio del concetto di base: http: //www.seemysites .net / projFolder / uploader /