Upload di file

di: Davide Vogliotti     13 Giugno 2002

In molte occasioni sviluppando applicazioni Web ci si imbatte nella necessità di dover dare la possibilità agli utenti che utilizzano il web di spedire un file dal suo PC direttamente al server. Questa operazione in gergo viene definita UPLOAD.

Normalmente per implementare questa funzionalità ci si deve servire di componenti esterni che vengono eseguiti sul server. Purtroppo però questi componenti, oltre che avere un costo, necessitano di un'installazione da parte del fornitore di servizio sulle sue macchine; cosa che non sempre, anzi, molto raramente, avviene.

In questo articolo cercheremo di capire come effettuare le operazioni di upload senza utilizzare nessun componente esterno, ma servendoci unicamente degli strumenti messi a disposizione dal linguaggio.

Di cosa abbiamo bisogno

Beh, davvero di poco! Le condizioni da soddisfare in linea di massima sono 2:

  • avere un file da caricare
  • avere un posto dove metterlo

Per la prima condizione mi sembra davvero inutile aggiungere altro.

Per la seconda invece è fondamentale che lo spazio web a nostra disposizione abbia una cartella dove sono stati abilitati i permessi di scrittura in modo da poter posizionare i file che vengono uploadati.

Normalmente tutti gli spazi web comprendono una cartella che risponde a questi requisiti ma nel caso in cui quest'ultima non ci fosse, potete contattare il vostro fornitore di servizio e chiedergli di creare una cartella ed assegnarle i permessi di scrittura.

Spedire i dati (form.html)

Iniziamo dalla parte più semplice: recuperare i dati e spedirli. Dobbiamo dare la possibilità all'utente di inserire i dati, scegliere il file da spedire e inviarlo al server.

Per adesso potremmo dare la possibilità all'utente di spedire unicamente il file e un campo di testo ma in ogni caso si può anche inviare altro, come altri campi di testo, checkbox, e simili in modo da poterli utilizzare in seguito per essere inseriti in un database o semplicemente di visualizzati. Per fare questo ci serviremo di un semplice form.

<form action="upload.asp" method="post" enctype="multipart/form-data">
  CAMPO TESTO <input type="text" name="testo1">
  FILE <input type="file" name="file1">
  <input type="submit" value="Upload">
</form>

Come potete notare è un semplice form che chiama una pagina (upload.asp) dove verranno inserite le operazioni da effettuare.

N.B. Il form deve essere di tipo multipart/form-data condizione richiesta affinché vengano passati effettivamente i dati. Se noi impostassimo nel form unicamente il metodo POST senza specificare il tipo di formato verrebbe passato il valore contenuto nel campo file del form, e quindi unicamente il percorso del file ma non i dati in esso contenuti.

Guide ASP

Guida ASP Nuke

Percorso per conoscere ASP Nuke: sistema di gestione contenuti open...

Guida ASP & MySQL

Utilizzare le pagine ASP e farle interagire con il database mySQL

Guida ASP con i cookie

Mini guida in sei lezioni per l'utilizzo specifico dei cookies

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Progettazione database

11 Maggio 2012 a Milano
Disponibilità: 6 Posti

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto