Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: semplice UP-LOAD

  1. #1
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264

    semplice UP-LOAD

    Ho questo semplicissimo sistema per fare "upload di file"... tra tutti quelli che ho trovato sembra il più comprensibile... l'unico problema è uno strano errore....

    provate a vedere se da voi funziona???

    gli altri script che ho trovato sul forum ... sono davvero incomprensibili... (almeno per me!)



    *************************************************
    <%
    'Questa variabile setta il percorso di dove effettuare l'upolad
    'la cartella non puo non esistere lo script non la crea ! ! !

    percorso = "/"

    ByteRicevuti = Request.TotalBytes

    if ByteRicevuti > 0 then
    DatiRicevuti = Request.BinaryRead(ByteRicevuti)
    For i = 1 To lenB(DatiRicevuti)
    FileBinario = FileBinario & chr(ascB(midB(DatiRicevuti,i,1)))
    Next
    FirmaFile = left(FileBinario,instr(FileBinario,"" & vbCrLf)-1)
    ArrPezzi = split(FileBinario,FirmaFile)

    for item = 1 to ubound(ArrPezzi)-1
    Inizio = instr(ArrPezzi(item),"" & vbCrLf & "" & vbCrLf)
    Intestazione = left(ArrPezzi(item),Inizio-1)
    Inizio = Inizio + len("" & vbCrLf) + len("" & vbCrLf)
    ContenutoFile = mid(ArrPezzi(item),Inizio,len(ArrPezzi(item))-Inizio-1)

    ' Recupero i campi se sono compilati
    if instr(Intestazione,"testo1") > 0 then
    testo1 = ContenutoFile
    end if

    ' Nel caso in cui fossero presenti piu campi basta duplicare
    ' la condizione cambiando unicamente il nome del campo
    ' es.
    'if instr(Intestazione,"testo2") > 0 then
    ' testo2 = ContenutoFile
    'end if

    'if instr(Intestazione,"testo3") > 0 then
    ' testo3 = ContenutoFile
    'end if

    ' Qui recupero il file da uploadare (se presente) e lo scrivo
    ' sul server
    if instr(Intestazione,"file1") > 0 then
    i = instr(Intestazione,"filename=")
    j = instr(i + 10,Intestazione,chr(34))
    NomeUpload = mid(Intestazione,i + 10,j-i-10)
    i = instrRev(NomeUpload,"\")
    if i<>0 then
    NomeFile = mid(NomeUpload,i + 1)
    else
    NomeFile = NomeUpload
    end if
    if i<>0 then
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Upload1 = True
    DimensioneFile1 = len(ContenutoFile)
    EstensioneFile1 = right(ContenutoFile,3)
    NomeFile1 = NomeFile
    Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile1), True, False)
    textStream.Write ContenutoFile
    textStream.Close
    Set textStream = Nothing
    Set FSO = Nothing
    end if
    end if

    ' Lo stesso discorso vale anche per i campi dei file :
    ' Nel caso in cui fossero presenti piu file basta duplicare
    ' la condizione cambiando unicamente il nome del campo
    ' es.

    'if instr(Intestazione,"file2") > 0 then
    ' i = instr(Intestazione,"filename = ")
    ' j = instr(i + 10,Intestazione,chr(34))
    ' NomeUpload = mid(Intestazione,i + 10,j-i-10)
    ' i = instrRev(NomeUpload,"\")
    ' if i<>0 then
    ' NomeFile = mid(NomeUpload,i + 1)
    ' else
    ' NomeFile = NomeUpload
    ' end if
    ' if i<>0 then
    ' Set FSO = CreateObject("Scripting.FileSystemObject")
    ' Upload2 = True
    ' DimensioneFile2 = len(ContenutoFile)
    ' EstensioneFile2 = right(ContenutoFile,3)
    ' NomeFile2 = NomeFile
    ' Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile2), True, False)
    ' textStream.Write ContenutoFile
    ' textStream.Close
    ' Set textStream = Nothing
    ' Set FSO = Nothing
    ' end if
    'end if

    'if instr(Intestazione,"file3") > 0 then
    ' i = instr(Intestazione,"filename = ")
    ' j = instr(i + 10,Intestazione,chr(34))
    ' NomeUpload = mid(Intestazione,i + 10,j-i-10)
    ' i = instrRev(NomeUpload,"\")
    ' if i<>0 then
    ' NomeFile = mid(NomeUpload,i + 1)
    ' else
    ' NomeFile = NomeUpload
    ' end if
    ' if i<>0 then
    ' Set FSO = CreateObject("Scripting.FileSystemObject")
    ' Upload3 = True
    ' DimensioneFile3 = len(ContenutoFile)
    ' EstensioneFile3 = right(ContenutoFile,3)
    ' NomeFile3 = NomeFile
    ' Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile3), True, False)
    ' textStream.Write ContenutoFile
    ' textStream.Close
    ' Set textStream = Nothing
    ' Set FSO = Nothing
    ' end if
    'end if
    next

    ' Da qui in poi è possibile fare esegiure allo script altre operazioni
    ' inserire qui gli script aggiuntivi che si vogliono eseguire dopo l'upload
    ' Per esempio visualizzare quello che è stato inserito all'interno del
    ' compo testo

    Response.Write "Il valore immesso nella testo1 è " & testo1 & "
    "

    ' Utilizzando il sistema descritto sopra è possibile visualizzare campi
    ' testo aggiuntivi presenti nel form
    ' Response.Write "Il valore immesso nella testo2 è " & testo2 & "
    "
    ' Response.Write "Il valore immesso nella testo3 è " & testo3 & "
    "

    ' E la stessa cosa per i campi dove è stato eseguito l'upload dei file

    If Upload1 = true then
    Response.Write "
    La dimensione del file che hai uploadato è di " & DimensioneFile1*0.001 & "kb"
    Response.Write "
    Grazie di aver inviato il tuo file"
    End If

    'If Upload2 = true then
    ' Response.Write "
    La dimensione del file che hai uploadato è di " & DimensioneFile2*0.001 & "kb"
    ' Response.Write "
    Grazie di aver inviato il tuo file"
    'End If

    'If Upload3 = true then
    ' Response.Write "
    La dimensione del file che hai uploadato è di " & DimensioneFile3*0.001 & "kb"
    ' Response.Write "
    Grazie di aver inviato il tuo file"
    'End If

    End if
    %>

  2. #2

  3. #3
    Che errore ti dà? Quale form utilizzi?

  4. #4
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    il form è questo:


    <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>



    mi dice

    Microsoft VBScript runtime error '800a0046'

    Permission denied

    upload.asp, line 57






    ma a cosa caspita serve la casella di testo???

  5. #5
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Abilita i permessi di scrittura sulla cartella dove esegui l'upload

  6. #6
    lo script funziona perfettamente, probabilmente non hai i permessi di scrittura nella cartella.


    Scusa Fraude, ma ho visto solo dopo la tua risposta.

  7. #7
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    scusa.. su quella cartella riesco normalmente a memorizzare records su db...


    non è sufficiente come privilegio?

  8. #8
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    toglimi una curiosità fraude....

    mi dici di guardare questo zip:

    http://www.aspxnet.it/public/files/...d/upload312.zip

    è incasinatissimo.... VVoVe:

    cosa permette di fare in più??? :master:

  9. #9
    Originariamente inviato da henry78
    scusa.. su quella cartella riesco normalmente a memorizzare records su db...


    non è sufficiente come privilegio?
    Quello zip ti fa fare tutto quello che vuoi, per esempio puoi memorizzare i dati in un database.

    Così come lo hai postato lo script "upload" fa l'upload del file nella stessa cartella di dove hai il file "upload" e il "form", che probabilmente non sono nella stessa cartella del database su cui tu riesci a scrivere. O sbaglio?


    ma a cosa caspita serve la casella di testo???
    La "casella di testo" serve a inserire dei dati abbinati al file uploadato e potrebbero, ad esempio, venire memorizzati in un database assieme al percorso del file per essere utilizzati poi in un'altra pagina. Cosa che ti fa fare anche meglio, lo script famosissimo indicatoti da Fraude

  10. #10
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    GRazie siete stati molto gentili!



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.