Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1

    Inglobare upload in un form

    Non so se ho preso una gran versione o se ho capito come usarlo, ma sto provando a inglobare un upload di Baol in un form dove un utente del mio sito può modificare i propri dati.
    Il problema è questo: se lascio enctype="multipart/form-data" l'upload pare almeno funzionare, ma la query:
    codice:
    UPDATE --- SET avatar = '', firma = '', bg = '', menu = , large=0 WHERE id =0
    Vale a dire: tutti i dati si sono persi. Se tolgo l'enctype, la classe di upload dà errore. Come posso fare?
    codice:
    If avy = 2 Then
    nym = "av" & id
    Dim oUpload
    Set oUpload = new cUpload
    		oUpload.AutoRename = False
    		oUpload.Overwrite = true
    		oUpload.SetPath "avatar/"
    		oUpload.Upload
    		oUpload.SaveAs nym & ".jpg"
    Set oUpload=Nothing
    avatar = "avatar/" & nym	
    end if
    Questo è il codice di upload. Nym serve a creare il nome proprio dell'immagine in upload.

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    L'upload trasferisce informazioni in formato binario sia di file che di campi form.
    Tu i campi form non li recuperi e infatti nella query sono vuoti.
    Recuperi solo il file.

    Roby

  3. #3
    Temo tu abbia equivocato ti ho solo scritto la fase dedicata al download, ma ho anche la sezione di recupero dati:
    codice:
    id = Cint (request("id"))
    avatar = Request.Form("avatar")
    firma = Request.Form("firma")
    bg = Request.Form("bg")
    menu = Request.Form("menu")
    large = Request.Form("large")
    avy = Request.Form("avy")

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    I campi form non si recuperano così con lìupload di Baol.

    Roby

  5. #5
    Cosa? :master: E come si recuperano?

  6. #6
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Al posto di Request.Form
    metti oUpload.Form
    dopo e solo dopo il metodo oUpload.load

  7. #7
    Purtroppo pare che l'inclusione di upload.asp generi un conflitto:
    codice:
    ADODB.Stream error '800a0bb9' 
    
    Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another. 
    
    /public/inkall/upload.asp, line 590
    Vi mostro come ho disposto il codice:
    codice:
    <%
    Dim oUpload
    Set oUpload = new cUpload
    oUpload.Load() 
    
    'RECUPERO DAL FORM
    id = oUpload.Form("id")
    avatar = oUpload.Form("avatar")
    firma = oUpload.Form("firma")
    bg = oUpload.Form("bg")
    menu = oUpload.Form("menu")
    large = oUpload.Form("large")
    avy = oUpload.Form("avy")
    
    
    'REPLACE
    bg = Replace(bg, "<", "&lt;")
    bg = Replace(bg, ">", "&gt;")
    firma = replace(firma,"'","''")
    bg = replace(bg,"'","''")
    firma = replace(firma,vbCrLf,"
    ")
    bg = replace(bg,vbCrLf,"
    ")   
    
    'CONDIZIONI
    If large = 1 Then
    lrg = 1
    else
    lrg = 0
    end if
     
    'SE HO SELEZIONATO PER UN AVATAR DA UPPARE...
    If avy = 2 Then
    nym = "av" & id
            oUpload.UploadOnly "Images"
    		oUpload.AutoRename = False
    		oUpload.Overwrite = true
    		oUpload.SetPath "avatar\"
    		oUpload.Upload
    		oUpload.SaveAs nym & ".jpg"
    avatar = "avatar/" & nym	
    end if
    '...O NIENTE
    
    'E INSERISCE
    strSQL = "UPDATE info SET avatar = '"&avatar&"', firma = '"&firma&"', bg = '"&bg&"', menu = "&menu&", large="&lrg&" WHERE id ="&id 
    response.write strSQL & "
    
    "
    Conn.Execute strSQL
    
    response.write "<font face='Verdana' size='1'>Modifica effettuata con successo.</font>"
    
    Set oUpload=Nothing 
    %>

  8. #8
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Secondo te quella cosa a colori che hai postato è comprensibile da un'essere umano?

  9. #9
    Rossa o blu? Béh ma comunque sia l'errore si trova nella tua pagina upload.asp (che io non ho toccato, ma solo incluso) :master: non so come possa essersi generato un conflitto... farei meglio ad eliminare l'include?

    Comunque il rosso sono semplicemente i campi recuperati da form, il rosso grassetto la definizione di oUpload e il blu l'upload stesso (non vedo cosa ci sia di così illeggibile, se non le assurde meccanicazioni operate per la creazione di un nome immagini, che non rivestono nel totale più di 3 righe )

  10. #10
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Che ne dici, un po' più leggibile? Prova il codice, naturalmente manca l'oggetto di connessione, che così ti restituirà errore.

    Hai impostato il caricamento di sole immagini e l'overwrite.

    codice:
    <%
    'Creazione Oggetto di Upload
    	Dim oUpload
    	Set oUpload = new cUpload
    	oUpload.UploadOnly "Images" 
    	oUpload.AutoRename = False
    	oUpload.Overwrite = True
    	oUpload.EnabledImageSize = False 'Se non ti servono le dim delle immagini
    	oUpload.SetPath "avatar\" 
    	oUpload.Load() 
    
    'Recupero valori form
    	id 	= oUpload.Form("id")
    	avatar 	= oUpload.Form("avatar")
    	firma	= oUpload.Form("firma")
    	bg 	= oUpload.Form("bg")
    	menu 	= oUpload.Form("menu")
    	large 	= oUpload.Form("large")
    	avy 	= oUpload.Form("avy")
    
    'Replace di Bg e Firma
    	bg 	= Replace(bg, "<", "&lt;")
    	bg 	= Replace(bg, ">", "&gt;")
    	bg 	= replace(bg,"'","''")
    	bg 	= replace(bg,vbCrLf,"
    ") 
    	firma 	= replace(firma,"'","''")
    	firma 	= replace(firma,vbCrLf,"
    ")
    
    'Impostazione di Lrg
    	lrg = 0
    	If large = "1" Then lrg = 1
     
    'Se seleziono l'avatar allora salvo il file
    	If avy = 2 Then
    		nym = "av" & id
    		oUpload.SaveAs nym & ".jpg" ' E se non fosse jpg????
    		avatar = "avatar/" & nym	
    	end if
    
    'Inserimento nel Database
    	strSQL = "UPDATE info SET avatar = '"&avatar&"', firma = '"&firma&"', bg = '"&bg&"', menu = "&menu&", large="&lrg&" WHERE id ="&id 
    	response.write strSQL & "
    
    "
    	Conn.Execute strSQL
    	response.write "<font face='Verdana' size='1'>Modifica effettuata con successo.</font>"
    
    'Chiusura
    Set oUpload=Nothing 
    %>

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 © 2025 vBulletin Solutions, Inc. All rights reserved.