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

    problema con baol74 upload

    spero qualcuno mi possa aiutare chè davvero qui sul forum non trovo nulla tra le discussioni passate...

    sto usando di fatto gli stessi file presenti sul thread:
    http://forum.html.it/forum/showthrea...4+AND+database

    (ho preso gli esempi uguali)

    Ho testato il tutto on line, manco sul PWS, e lo script in effetti carica i file e scrive sul db ma mi dà errore:

    "
    il file logo_w.gif è stato salvato

    Errore di run-time di Microsoft VBScript error '800a01a8'

    Necessario oggetto: 'Fields'

    /filcea/upload/upload.asp, line 124
    "


    la riga 124 (il cui senso mi è del tutto oscuro...) del file upload.asp è:

    "
    Public Sub Close()
    On error resume next
    Rs.Close
    Conn.Close
    On error goto 0
    Set Conn = Nothing
    Set Rs = Nothing

    'RIGA 124
    Fields.RemoveAll
    Set Fields = Nothing
    End Sub
    "

    qualcuno può aiutarmi?
    e magari dirmi anche come si può mettere un filtro su dimensioni e peso degli allegati (perché ho la sensazione che tutti gli esempio di baol74 che ho scaricato lo permettano ma non so davvero come fare, se non provando un po a caso fino a trovare la soluzione)...

    grazie

  2. #2
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    non hai messo l'attributo enctype nel tag form

  3. #3
    grazie per la risposta...

    in realtà a me pare che nel form sia tutto ok, te lo posto, se hai voglia di darci un occhio...:
    <form action="Upload_Database2.asp" method="post" enctype="multipart/form-data" name="form1">
    <table width="500" align="center" cellspacing="5">
    <tr>
    <td>Tipo</td>
    <td>
    <select name="Tipo" id="Tipo">
    <option value="LEGGERO" selected>LEGGERO</option>
    <option value="MEDIO">MEDIO</option>
    <option value="PESANTE">PESANTE</option>
    </select>
    </td>
    </tr>
    <tr>
    <td>Marca</td>
    <td>
    <input name="Marca" type="text">
    </td>
    </tr>
    <tr>
    <td>Modello</td>
    <td>
    <input name="Modello" type="text">
    </td>
    </tr>
    <tr>
    <td>Anni</td>
    <td>
    <input name="Anni" type="text" >
    </td>
    </tr>
    <tr>
    <td>Descrizione</td>
    <td>
    <textarea name="Descrizione" cols="50" rows="5"></textarea>
    </td>
    </tr>
    <tr>
    <td>Foto
    piccola</td>
    <td>
    <input name="fotop" type="file">
    </td>
    </tr>
    <tr>
    <td>Foto
    grande</td>
    <td>
    <input name="fotog" type="file" >
    </td>
    </tr>
    <tr >
    <td> </td>
    <td>
    <input name="submit" type="submit" value="Inserisci">
    </td>
    </tr>
    </table>
    </form>
    ********************
    invece la pagina di upload è questa , presa dal thread che ho indicato prima...anche qui non riesco a capire cosa non va...


    <%
    Dim oUpload
    Set oUpload= new cUpload
    With oUpload
    'La riga seguente impoosta la connessione al database e la tabella di inserimento dati
    'La connesione e la tabella verranno aperti con il metodo oUpload.Database.Open()
    .SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("auto.mdb"),"SELECT Top 1 * FROM auto"
    .EnabledAspUpload = False
    .EnabledImageSize = True
    .EnabledLog = False
    .AutoRename = True
    .Overwrite = False
    .SetPath "auto\"
    .Load




    .Save
    response.Write "il file " & .GetFileName &" è stato salvato
    "
    .Database.Fields("TIPO") = .Form("Tipo")
    .Database.Fields("MARCA") = .Form("Marca")
    .Database.Fields("MODELLO") = .Form("Modello")
    .Database.Fields("ANNI") = .Form("Anni")
    .Database.Fields("DESCRIZIONE") = .Form("Descrizione")
    Select Case lCase(.Files("InputName"))
    Case "fotop" :.Database.Fields("FOTOP") = .GetFileName
    Case "fotog" :.Database.Fields("FOTOG") = .GetFileName
    END SELECT
    .MoveNext
    Wend
    .Database.AddNew()
    .Database.Close

    End With
    Set oUpload = Nothing
    %>

  4. #4
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Cambia la funzione Close con questa:

    codice:
    Public Sub Close() 
    On error resume next 
    Rs.Close 
    Conn.Close 
    Set Conn = Nothing 
    Set Rs = Nothing 
    Fields.RemoveAll 
    Set Fields = Nothing 
    On error goto 0 
    End Sub

  5. #5
    grazie mille funziona...

    solo che:
    - non mi salva il file nella cartella
    - se provo a caricarne 2 assieme mi dice: "il file {primo file caricato} è stato salvato" e "ADODB.Stream error '800a0e79' - Operation is not allowed when the object is open. - /t/upload.asp, line 804 "
    - non mi salva neanche i dati nel DB!!

    insomma...direi che mi dà ancora qualche "problemino"...


    se puoi darmi una mano anche per questo ti ringrazio davvero, chè è da ieri che ci sbatto la testa...certo mi piacerebbe farlo funzionare il tuo sistema di upload perché effettivamente è l'unico veloce e che non va in timeput che ho trovato free...

  6. #6
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Il codice che stai usando è quello sopra che hai postato?Perchè ci sono diversi errori.

  7. #7
    si, il codice è quello sopra...se mi puoi segnalare gli errori mi fai un grosso favore...iniziano a incrociarmisi gli occhi e non è detto che sia in grado di beccarli (evidentemente sono un programmatore decisamente improvvisato...)

  8. #8
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    codice:
     
    <% 
    Dim oUpload 
    Set oUpload= new cUpload 
    With oUpload 
    .AutoRename = True 
    .Overwrite = False 
    .SetPath "auto\" 
    .Load 
    
    .SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("auto.mdb"),"SELECT Top 1 * FROM auto" 
    .Database.Open()
    
    While Not (.EOF)
    	.Save 
    	.Database.Fields("TIPO") = .Form("Tipo") 
    	.Database.Fields("MARCA") = .Form("Marca") 
    	.Database.Fields("MODELLO") = .Form("Modello") 
    	.Database.Fields("ANNI") = .Form("Anni") 
    	.Database.Fields("DESCRIZIONE") = .Form("Descrizione") 
    		Select Case lCase(.Files("InputName")) 
    			Case "fotop" :.Database.Fields("FOTOP") = .GetFileName 
    			Case "fotog" :.Database.Fields("FOTOG") = .GetFileName 
    		END SELECT 
    	.Database.AddNew() 
    	Response.Write "il file " & .GetFileName &" è stato salvato 
    " 
    	.MoveNext 
    Wend 
    
    .Database.Close 
    
    End With 
    Set oUpload = Nothing
    Non c'era il ciclo while, Non aprivi il database. L'addNew era esterno al while.

  9. #9
    Dopo il pomeriggio passatoci sopra mi funziona tutto, tranne che per una cosa: non mi salva il record se non carico nessuna file (cosa che per il sito che sto facendo potrebbe succedere spesso...)

    è possibile modificare lo script per permetterlo? non mi salva il record perché oUpload è già .EOF se non ha file da caricare (magari non centra nulla ma è l'unica cosa che mi è venuta in mente...)?

    se mi puoi aiutare anche in questo...
    posto il codice finale che uso ora:
    *************************************
    <%
    Dim oUpload
    Set oUpload= new cUpload
    With oUpload

    'La connesione e la tabella verranno aperti con il metodo oUpload.Database.Open()
    .SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("news.mdb"),"SELECT Top 1 * FROM news"

    .EnabledAspUpload = False
    .EnabledImageSize = False
    .EnabledLog = False
    .AutoRename = True
    .Overwrite = False

    .SetPath "files\"
    .Load
    .MoveFirst

    .Database.Open()
    While Not .EOF
    .Save
    response.Write "hai caricato: " & .GetFileName &"
    "
    .Database.Fields("titolo") = .Form("titolo")
    .Database.Fields("txt") = .Form("txt")

    Select Case lCase(.Files("InputName"))
    Case "percorso" :.Database.Fields("percorso") = .GetFileName
    Case "percorso2" :.Database.Fields("percorso2") = .GetFileName
    END SELECT

    .MoveNext
    Wend

    .Database.AddNew()
    .Database.Close


    End With
    Set oUpload = Nothing
    %>

  10. #10
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Scusa, ma è uno o sono 2 i files che devi salvare? Prechè se è uno il ciclo while non ti serve.

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.