Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Upload baol: caricamento files multipli

    Ciao, problemi con l'upload di baol.

    Carico tre file diversi tramite l'upload di baol ma nella query che inserisce i nomi dei tre file in una tabella mysql, il nome del file è sempre l'ultimo caricato, questo è l'output:

    codice:
    new documento di microsoft word.doc
    new documento di microsoft word_0.doc
    new documento di microsoft word_1.doc
    
    UPDATE tbl SET 
    FILE_1 = 'new documento di microsoft word_1.doc', 
    FILE_2 = 'new documento di microsoft word_1.doc', 
    FILE_3 = 'new documento di microsoft word_1.doc' 
    WHERE ID = 5
    Questo è il codice:

    codice:
       Function IsSet(Value)
           IsSet = Not IsNull(Value) And Value <> ""
       End Function
    
       Sub Write(Value)
          Response.Write Value
       End Sub
    
       Set oUpload = new cUpload
       
       With oUpload
       oUpload.Load
    
       strFolder = "/Archivio/"
    
       If IsSet(strFolder) Then
    
       oUpload.SetPath strFolder 
       oUpload.AutoRename = true
       oUpload.Overwrite = false   
    
       oUpload.MoveFirst
       While Not .Eof  
       
       
       oUpload.SaveAs oUpload.GetFileName
       file_uploaded = replace(oUpload.files("name"), "'", "''") & "." & oUpload.files("ext") 
       response.write file_uploaded & "
    
    "
       
    
       //QUERY DI AGGIORNAMENTO
       strSQL = "UPDATE " 
       strSQL = strSQL & "  tbl " 
       strSQL = strSQL & "  SET " 
       strSQL = strSQL & "  FILE_1 = '" & strFolder & "/" & file_uploaded & "', "
       strSQL = strSQL & "  FILE_2 = '" & strFolder & "/" & file_uploaded & "', "
       strSQL = strSQL & "  FILE_3 = '" & strFolder & "/" & file_uploaded & "', "
       strSQL = strSQL & "  WHERE " 
       strSQL = strSQL & "  ID = " & request.querystring("strID")
       cn.execute(strSQL)
    
       oUpload.MoveNext
       Wend
       
       End if
    
       End With  
       
       Set oUpload = Nothing
    Dove sbaglio?
    Grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    La query devi metterla fuori dal ciclo.
    All'interno invece devi creare tra variabili distinte per ogni file oppure un array con tre elementi.

    Roby

  3. #3
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Roby_72
    La query devi metterla fuori dal ciclo.
    All'interno invece devi creare tra variabili distinte per ogni file oppure un array con tre elementi.

    Roby
    Ok grazie.

    La query è fuori dal ciclo, ma non ho capito come fare un array con tre elementi.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Attiva un contatore fuori dal ciclo che incrementerai nel ciclo.
    All'interno in base al valore del contatore carichi elementi in un array:

    i = 0
    while...
    arr_file(i) = il singolo file
    i = i + 1
    wend

    Alla fine l'array arr_file conterrà tanti elementi quanti sono i file.

    Roby

  5. #5
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Roby_72
    Attiva un contatore fuori dal ciclo che incrementerai nel ciclo.
    All'interno in base al valore del contatore carichi elementi in un array:

    i = 0
    while...
    arr_file(i) = il singolo file
    i = i + 1
    wend

    Alla fine l'array arr_file conterrà tanti elementi quanti sono i file.

    Roby
    Sicuramente non ho capito:...

    codice:
       i=0   
    
       oUpload.MoveFirst
       While Not .Eof  
          
       oUpload.SaveAs oUpload.GetFileName
       file_uploaded = replace(oUpload.files("name"), "'", "''") & "." & oUpload.files("ext") 
    
       while Not .Eof
       arr_file(i) = file_uploaded 
       i = i + 1
       wend 
       
       oUpload.MoveNext
       Wend
    Microsoft VBScript runtime error '800a000d'
    Type mismatch: 'arr_file'

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ma quanti cicli hai fatto??
    Il ciclo è sempre uno, quello che avevi prima.

    Roby

  7. #7
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Roby_72
    Ma quanti cicli hai fatto??
    Il ciclo è sempre uno, quello che avevi prima.

    Roby
    OK, ma l'errore non cambia anche con un unico ciclo:

    codice:
       
       Microsoft VBScript runtime error '800a000d' 
       Type mismatch: 'arr_file' 
    
       i=0   
    
       oUpload.MoveFirst
       While Not .Eof  
          
       oUpload.SaveAs oUpload.GetFileName
    
       file_uploaded = replace(oUpload.files("name"), "'", "''") & "." & oUpload.files("ext") 
       
       arr_file(i) = file_uploaded 
       i = i + 1
       
       oUpload.MoveNext
       Wend

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ovviamente devi cambiare di conseguenza anche la query, passando il valore dell'array in corrispondenza dei tre file.

    Roby

  9. #9
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Roby_72
    Ovviamente devi cambiare di conseguenza anche la query, passando il valore dell'array in corrispondenza dei tre file.

    Roby
    L'ho fatto ma l'errore è su questa riga:

    codice:
    arr_file(i) = file_uploaded

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    i=0
    Dim arr_file(3)
    oUpload.MoveFirst

    Roby

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.