Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Allegare files da form: problema con script di BAOL

    Ciao, ho un form con diversi campi di cui 3 che devono dare la possibilità di allegare un file. Sono in posizioni diverse, non campi contigui.
    Facendo ricerche nel forum ho trovato uno script interessante che mi permette di uploadare senza dover installare componenti sul server, è stato fatto da Baol:
    http://www.creamweb.it/script/mostra.../?id_script=12

    Lanciando le sue pagine di esempio se scelgo dei files (di tipo xls) me li allega correttamente, ora ho provato ad adattare il codice alla mia pagina asp con il form ma mi ritorna questo errore:
    codice:
    Oggetto Request, ASP 0206 (0x80004005)
    Impossibile richiamare il metodo BinaryRead dopo aver utilizzato l'insieme Request.Form.
    /scheda_imac/si_include/inc_upload.asp, line 275
    Il file inc_upload.asp è lo stesso che negli esempi di Baol si chiama upload.asp , l'ho solo rinominato e la linea in cui si verifica l'errore è quella in grassetto:
    codice:
    Private function BinaryStringRead()
      Dim bR,bTr
      bR = 0:bTr = 1024 * 20
      Rs.AddNew
      while bR< iTotalBytes
         if iTotalBytes - (br + bTr)< 0 then bTr = iTotalBytes - bR
         rs.fields("sBinary").AppendChunk Request.BinaryRead(bTr)
         bR = bR + bTr
      wend
      Rs.Update
      BinaryStringRead = rs.fields("sBinary")
      Rs.CancelUpdate
    end function
    Ho tentato di adattare alle mie esigenze lo script "Upload_Semplice", facendo questo:
    codice:
    If Request("a")= "1" then
      nome_file = (datePart("yyyy",date()) & "-" & datePart("m",date()) & "-" & datePart("d",date())) & "_allegatoA"
      call Upload_Allegato(nome_file)
    End if
    If Request("a")= "2" then
      nome_file = (datePart("yyyy",date()) & "-" & datePart("m",date()) & "-" & datePart("d",date())) & "_allegatoB"
      call Upload_Allegato(nome_file)
    End if
    If Request("a")= "3" then
      nome_file = (datePart("yyyy",date()) & "-" & datePart("m",date()) & "-" & datePart("d",date())) & "_allegatoC"
      call Upload_Allegato(nome_file)
    End if			
    	
    Sub Upload_Allegato(nome_file)
      Dim oUpload
      Set oUpload = new cUpload
      oUpload.SetPath(dir_allegati)
      oUpload.UploadAndSave
      oUpload.SaveAs(nome_file)
      Set oUpload=Nothing
    End Sub
    Sapete in cosa sbaglio?
    Per semplificarmi le cose pensavo di far aprire un popup con il classico "sfoglia" e il pulsante "allega", a operazione avvenuta lo chiudo e nella pagina da cui ho richiamato l'allegamento potrei visualizzare il nome del file scelto. Solo che non so come farlo, quindi non so cosa mi sarebbe più facile

    Scusate per la lunghezza e la confusione ma ... sono confusa

  2. #2
    Mi uppo... Si sa mai che qualcuno che non aveva letto sia in grado di darmi suggerimenti

  3. #3
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    non puoi fare questo:

    If Request("a")= "2" then


    non puoi utilizzare request nella pagina dove "ricevi" i dati del form di upload. se hai necessità di recuperare anche form di tipo testo oltre a quelli di tipo file devi utilizzare l'apposito metodo .Form("noemcampo") della classe di baol...

  4. #4
    Grazie, ora funziona!
    Però così c'è lo svantaggio che devo per forza fare 1 pagina di allegato per ogni file che mi serve
    Va bè, tanto per fortuna avevo solo 3 file e ho creato altrettante popup, se poi avrò illuminazioni per sistemare questa cosa lo farò, intanto il problema è risolto.

    Grazie ancora


  5. #5
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    ????

    no,ti ho detto ke puoi comunque recuperare i valori di campi "non" di tipo file, basta che non usi request.form o request.querystring, ma usa invece il metodo appropriato della classe di Baol, che è oUpload.Form("nome_campo")

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.