Ciao a tutti, utilizzando una guida di html ho creato un piccolo form con il quale "uploaddare" documenti. Il tutto funziona, il fatto è che non funziona con tutti i files ma bensi solo con alcuni. Mi spiego: ho provato ad inviare un programma .exe da 200kb e tutto è andato alla perfezione, lo stesso per file di testo ( o db) di piccole dimensioni (sempre circa 200kb). Oggi però tentanto di caricare un file in formato .pdf (circa 1mb) l'operazione non andava abuon fine. La mia domanda è: il file è troppo grosso? Per questo l'upload non va a buon fine? O ci sono eventuali altri motivi?
Vi posto il codice del form:
codice:
<form action="upload.asp" method="post" enctype="multipart/form-data">
Nome File</p>
<input type="text" name="testo1">
</p>
File</p>
<input type="file" name="file1">
</p>
<input type="submit" value="Upload">
</p>
</form>
E qui il codice della pagina upload.asp:
codice:
percorso = "/Documenti/"
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
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
next
Response.Write "Il valore immesso nella testo1 e " & testo1 & "
"
If Upload1 = true then
Response.Write "
La dimensione del file che hai uploadato e di " & DimensioneFile1*0.001 & "kb"
Response.Write "
Il file e stato inviato correttamente!"
End If
End if
%>
Grazie mille a tutti per la pazienza