si e infatti tutto funziona fino al limite dei 200k a 210 fa cilecca e mi mostra a video il messaggio di not allowed.Originariamente inviato da weppos
Quale oggetto utilizzi per l'upload?
di seguito ti mando il codice usato proveniente da aspcode.it
e che ho modificato in piccola parte.
<%
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
'Upload con ASP by ASPCode.it - http://www.aspcode.it '
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
'variabili di configurazione
Dim folder, filePath
folder = "../../../database/carica" 'directory sul server con accesso in scrittura
filePath = Server.mappath(folder)
'fine variabili di configurazione
'provo a settare un valore alto per il timeout
Server.ScriptTimeout = 3600
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
Response.write Server.mappath(folder)
Response.Flush
Sub BuildUploadRequest(RequestBin)
PosBeg = 1
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
boundaryPos = InstrB(1,RequestBin,boundary)
Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))
Dim UploadControl
Set UploadControl = CreateObject("Scripting.Dictionary")
'Get an object name
Pos = InstrB(BoundaryPos,RequestBin,getByteString("Conte nt-Disposition"))
Pos = InstrB(Pos,RequestBin,getByteString("name="))
PosBeg = Pos+6
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
PosFile = InstrB(BoundaryPos,RequestBin,getByteString("filen ame="))
PosBound = InstrB(PosEnd,RequestBin,boundary)
If PosFile<>0 AND (PosFile<PosBound) Then
PosBeg = PosFile + 10
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
UploadControl.Add "FileName", FileName
Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))
PosBeg = Pos+14
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
UploadControl.Add "ContentType",ContentType
PosBeg = PosEnd+4
PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
Else
Pos = InstrB(Pos,RequestBin,getByteString(chr(13)))
PosBeg = Pos+4
PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
End If
UploadControl.Add "Value" , Value
UploadRequest.Add name, UploadControl
BoundaryPos=InstrB(BoundaryPos+LenB(boundary),Requ estBin,boundary)
Loop
End Sub
Function getByteString(StringStr)
For i = 1 to Len(StringStr)
char = Mid(StringStr,i,1)
getByteString = getByteString & chrB(AscB(char))
Next
End Function
Function getString(StringBin)
getString =""
For intCount = 1 to LenB(StringBin)
getString = getString & chr(AscB(MidB(StringBin,intCount,1)))
Next
End Function
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Set UploadRequest = CreateObject("Scripting.Dictionary")
' limite Bytes da trasferire
Length = CLng(Request.ServerVariables("HTTP_Content_Length" ))
if Length > 1000000 Then
byteCount = Request.TotalBytes
response.write "<html><body><font color=black>Il limite di trasferimento per singola E-mail è stato stabilito su 1.000.000 BYTES. Questo file è troppo grande (" & byteCount & " B)</font><body></html>"
response.end
end if
BuildUploadRequest RequestBin
contentType = UploadRequest.Item("blob").Item("ContentType")
filepathname = UploadRequest.Item("blob").Item("FileName")
filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value = UploadRequest.Item("blob").Item("Value")
'Create FileSytemObject Component
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File
Set MyFile = ScriptObject.CreateTextFile(filePath&"\"&filename)
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
%>
Hai i permessi di scrittura nella cartella per l'upload?
grazie per l'attenzione
ciao
Ivo