Upload con le ASP

3 pagine in totale: <<Indietro 1 2 [3]

Il parser

Il parser si deve occupare di creare una collezione di clsInput utilizzando l'oggetto "Scripting.Dictionary" (anche questo incluso nella installazione standard). L'oggetto in questione è "inputs".
In basso c'è una pagina ASP che fa utilizzo del modulo ASP in questione:

<!--#INCLUDE FILE="uploader.asp" -->

<HTML>
<BODY>

<%
    Dim bytecount
    Dim retErr
       
    bytecount = UpLoad()
   
    if bytecount > 0 then
        Dim id, title, description, filePath

        title        = inputs("title")
        description    = inputs("description")
       
        if inputs("uploadFile").isFile = true then
            ' save the file
            retErr = inputs("uploadFile").saveFileAs(Server.MapPath("images"), "")
        end if
                       
    else %>

        <form action="" method="post" encType="multipart/form-data">

        <input type="text" name="title"><br>
        <textarea name="description"></textarea>
        <INPUT name="uploadFile" type="file"><br>
        <INPUT type="submit" value="Submit" name="SendData">   
       
        </form>   
       
    <% end if %>

</BODY>
</HTML>

Dopo aver incluso il modulo (

<!--#INCLUDE FILE="uploader.asp" -->
) , viene richiamata la funzione Upload() che restituisce la lunghezza della richiesta: se è uguale a zero vuol dire che non è stato fatto il submit del from, quindi viene riproposto lo stesso, in caso contrario si passa a processare la richiesta. Come si può vedere dall'esempio è tutto molto semplice: volendo conoscere il contenuto dell'input "title" (inviato tramite il form) basta utilizzare:

inputs("title")

Nessuna differenza, quindi, con quanto si fa per accedere al contenuto di un file.

Conclusioni

L'esempio presentato in questo articolo è pienamente funzionante e come già detto non necessita di compontenti aggiuntivi.

Unici problemi che rimangono nella soluzione sono:

  • i membri della classe clsInput non sono a sola lettura
  • non è supportato l'array di fields (più INPUT con lo stesso nome)

Ma in una futura release, affinando ulteriormente il codice, si potrebbe ovviare a questi problemi.

Approfondimenti

3 pagine in totale: <<Indietro 1 2 [3]

Attenzione: Questo articolo contiene un allegato

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC