- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- Scaricare un Attachment
-
Scaricare un Attachment
Salve a tutti,
ho un database ACCESS 2013 che interrogo da una pagina ASP.la mia stringa di connessione è :
*
Dim conn *
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= \isocompserver\asp\DB_production.mdb; Persist Security Info=False;")
sql = "SELECT * FROM Strumenti WHERE Strumenti.Categoria ='Strumenti Elettronici' ORDER BY Marca"
Set RsMacchina = Server.CreateObject("ADODB.Recordset")
*RsMacchina.Open sql, conn ,3,3Sfoglio la tabella che mi interessa fino ad arrivare al Record che cerco :
<%
*do while not RsMacchina.eof
*....e Mando in visualizzazione il campo che mi interessa in html :
-
<td bordercolor="#0000ff" height="21" width="134" align="middle" >*
-
<font size="2"> <% response.write RsMacchina.fields("Ubicazione")%></font></td>*
ecc ...
uno di questi campi del record e un campo Attachment e vorrei scaricare l'attach, che è una foto
per mostrarla sulla pagina.
non ci riesco neanche a salvarla sul disco.in realtà ho trovato questo codice all'indirizzo : msdn.microsoft.com/en-us/library/office/ff191852.aspx
- ' Instantiate the child recordset.
Set rsPictures = rsEmployees.Fields("Pictures").Value
' Loop through the attachments.
While Not rsPictures.EOF
' Save current attachment to disk in the "My Documents" folder.
rsPictures.Fields("FileData").SaveToFile
_ "C:\Documents and Settings\Username\My Documents"
rsPictures.MoveNext
** Wend *
l'ho modificato secondo per la mia pagina :
- ' Instantiate the child recordset.
Set rsPictures = RsMacchina.Fields("Foto").Value
' Loop through the attachments.
While Not rsPictures.EOF
' Save current attachment to disk in the "My Documents" folder.
rsPictures.Fields("FileData").SaveToFile
_ "C:\Documents and Settings\Username\My Documents"
rsPictures.MoveNext
** Wend
*ma come primo e insormontabile errore mi dice :
[TABLE="width: 100%"]
[TR="class: alt"]
ErrorCode[/TH]
[TD="class: event-data"]800a01a8[/TD]
[/TR]Description[/TH]
[TD="class: event-data"]Necessario oggetto: '[undefined]'[/TD]
[/TR]
[/TABLE]alla prima linea di codice
*Set rsPictures = RsMacchina.Fields("Foto").Value
*
Leggendo qui e la mi dice di creare prima l'oggetto, ma non ho capito cosa vuole
mi riscite ad aiutare ??Grazie
-
-
Ciao spidernet e benvenuto sul Forum...
Non conosco il tipo di campo Attachment di Access, ma credo che debba essere necessario gestirlo come fosse un binary...
Se così fosse quando recuperi quel campo devi prima trasformarlo nel file che desideri e salvarlo su disco.Oppure in quel *rsPictures.Fields("FileData") *specifico non c'è nulla...
-
Salve artcava,
ti ringrazio per la risposta.in *rsPictures.Fields("FileData") *c'è una foto, lo so perchè ho il database sotto mano e conosco il record che sto guardando.
puoi spiegarmi come eseguire questa operazione ? ...
"*devi prima trasformarlo nel file che desideri e salvarlo su disco."
*si tratta di foto allegate.Grazie.
-
OK, ho riletto il tuo codice e soprattutto dove riporti l'errore...
In realtà l'errore viene dato prima:*Set rsPictures = RsMacchina.Fields("Foto").Value
Nell'esempio da cui sei partito si parla di DAO, mentre nel codice stai utilizzando ADO...
Probabilmente nel Field "Foto" non c'è una proprietà Value...
Magari sbaglio, non uso più ADO da un bel po' di tempo e questi dettagli non li ricordo proprio...
-
Non sono ancora riuscito a risolvere, Nessun aiuto in merito ?
Grazie.