Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135

    [Upload] controllo dimensione immagine

    Ciao a tutti; ho questo semplice codice per l'upload di files su un server che mi controlla anche che il peso dell'img da caricare non sia superiore ad un certo limite.

    Voglio chiedervi se è possibile prevedere anche un controllo sulle dimensioni dell'immagine da caricare, ho provato così ma non funziona:

    codice:
    If .filename("Height")>=200 or filename("Width")>=200 then
    Response.write ("Le dimensioni dell'immagine non sono corrette (" &_		 
    filename("Height") &"x" & filename("Width") &"): File non caricato
    "  )		
    else			
    Response.Write "Immagine Salvata
    " 		
    end if
    Codice completo:

    codice:
    <%
    
      Response.Expires=0
      Response.Buffer = TRUE
      Response.Clear
      byteCount = Request.TotalBytes
      RequestBin = Request.BinaryRead(byteCount)
      
      
      Dim UploadRequest
      Set UploadRequest = CreateObject("Scripting.Dictionary")
      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")
      
        
      If cLng(byteCount)>(10000) then
    			Response.write ("L'immagine è troppo grande")
    			
    		else
    
      Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    
      pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
      Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd) & filename)
     
      For i = 1 to LenB(value)
    	 MyFile.Write chr(AscB(MidB(value,i,1)))
      Next
      MyFile.Close
    
      
      response.write "OK"
    
       end if
       %>
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  2. #2
    Ma è l'upload di Baol? cosa c'è nel file "upload.asp" che includi?

    ps. quel codice sul controllo delle dimensioni non mi è nuovo. anzi, ora che lo vedo mi sembra proprio un blocco che scrissi utilizzando l'upload di baol. l'hai scritto tu o l'hai trovato da qualche parte?

  3. #3
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Mi spiace ma sei completamente fuoristrada è lo script di upload pubblicato sul sito di www.aruba.it
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  4. #4
    no, figurati. solo per capire. comunque è la parte sul controllo delle dimensioni che non funziona?


    intanto mi sembra strano il .filename("Height")>=200 (il punto iniziale) se sei all'interno di un with è ok, ma resta il fatto che poi il punto non oo usi +.
    "filename" così, ad intuito dovrebbe essere una proprietà, non un un metodo. forse .FILE("Height") o FILES("Height"). comquen dovresti postare il codice del file incluso poer capire meglio.

  5. #5
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Ecco il codice dell'include upload.asp:

    codice:
    <%
    
    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")
    		Pos = InstrB(BoundaryPos,RequestBin,getByteString("Content-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("filename="))
    		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),RequestBin,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
    
    %>
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  6. #6
    ma sbaglio o nel codice dell'upload non esiste una funzione chiamata filename che restituisce l'altezza o la larghezza?

    come al solito ti suggerisco l'upload di baol74.

  7. #7
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da santino83
    ma sbaglio o nel codice dell'upload non esiste una funzione chiamata filename che restituisce l'altezza o la larghezza?

    come al solito ti suggerisco l'upload di baol74.
    Si infatti non esiste... è questa funzione di controllo dimensioni img che bisognerebbe inventarsi... non posso usare l'uplaod di baol74 (ordini di scuderia... )
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  8. #8
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    up[load]
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

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.