Dopo lungo pellegrinare alla ricerca di uno script che mi permettesse di fare l'upload di un file più pesante di qualche KB mi sono imbattuto in Baol e, utilizzando "l'esempio form", con grande soddisfazione sono riuscito a trasferire sul server parecchi MB in pochi secondi.
Purtroppo ho qualche problema con l'applicazione di Baol ad un database e mi trovo a fare i conti con questo errore:
Microsoft VBScript compilation error '800a0401'
Expected end of statement
/upload/inserisci.asp, line 9
.SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("/mdb-database/documenti.mdb"),"SELECT Top 1 * FROM ARCHIVIO"
La struttura del mio sito (aruba) è la seguente:
miosito.com
|||
|||
||upload
|||---form.htm
|||---inserisci.asp
|||---upload.asp
||
||
|mdb-bt ---documenti.mdb
|
|
public ---file
Il file form.htm è:
<body bgcolor="#000000">
<form action="inserisci.asp" method="post" enctype="multipart/form-data" name="form1">
<table width="500" align="center" cellspacing="5">
<tr valign="baseline">
<td width="100" align="right" nowrap><font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif">Mittente</font></td>
<td width="400"><input name="Mittente" type="text" id="Mittente" size="45"> </td>
</tr>
<tr valign="baseline">
<td nowrap align="right"><font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif">Documento</font></td>
<td><input name="Percorso" type="file" id="Percorso"> </td>
</tr>
<tr valign="baseline">
<td nowrap align="right"> </td>
<td><input name="submit" type="submit" value="Inserisci">
<input type="reset" name="Submit" value="Reimposta"></td>
</tr>
</table>
</form>
</body>
</html>
Il file inserisci.asp è:
codice:<% 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("../mdb-database/documenti.mdb"),"SELECT Top 1 * FROM ARCHIVIO" .EnabledAspUpload = False .EnabledImageSize = False .EnabledLog = False .AutoRename = True .Overwrite = False .SetPath "..\public\files\" .Load .MoveFirst if .EOF then NumFiles = .Count() Response.write "0 Files caricati su " & NumFiles &" : controlla le dimensioni e il tipo di file." else .Database.Open() While Not .EOF .Save response.Write "il file " & .GetFileName &" è stato salvato " 'Inserimento dei valori .Database.Fields("Mittente") = .Form("Mittente") .Database.Fields("Percorso") = .GetCompletePathFile 'Inserimento .Database.AddNew() .MoveNext Wend end if End With Set oUpload = Nothing %>
Il file upload.asp non lo ho modificato (lo ho inserito così come lo ho scaricato).
Il file documenti.mdb è un database di access in cui è presente una tabella chiamata "ARCHIVIO" con 2 soli campi: "Mittente" e "Percorso".
Vi chiedo:
1_come devo modificare il percorso del MapPath per evitare l'errore?
2_vi sembra che per il resto, io abbia agito correttamente?
Grazie in anticipo per l'aiuto!
max![]()

Rispondi quotando