Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    Email con allegato e CDOSYS

    Buon anno!

    Ho trovato con la ricerca questo script che esporta in excel dei dati visualizzati in asp; il problema è che vorrei mandare via email in allegato anche il file.xls generato dallo script, ma non ricevo nulla anche se lo script non restituisce errori; dico subito che ho provato ad eliminare ed a spostare le righe segnate con colore rosso nel code, ma in questo caso la generazione del file excel va in errore:
    codice:
    <%
    Dim FileName
    FileName="file.xls" 
    Response.Buffer = true 
    Response.ContentType = "application/vnd.ms-excel" 
    Response.AddHeader "content-disposition", "inline; filename=" & FileName 
    path="mdb.mdb" 
    
    Dim DBConn 
    Set DBConn=Server.CreateObject("ADODB.Connection")
     
    Dim rs 
    set rs=Server.CreateObject("ADODB.Recordset") 
    strConn="Provider = Microsoft.Jet.OLEDB.4.0;" 
    strConn= strConn & "Data Source =" & Server.MapPath(path) 
    
    DBConn.Open strConn 
    
    nome = Request.form("nome")
    cognome = Request.form("cognome")
    email = Request.form("email")
    
    set rs = DBConn.Execute("SELECT * FROM anagrafica WHERE nome = '" &nome& "'")
    
    DO while not rs.EOF 
    
    Response.write "<table border=1>" 
    Response.Write("<tr>") 
    Response.Write("<th bgcolor='#FFCC99'>nome</th><th bgcolor='#FFCC99'>cognome</th><th bgcolor='#FFCC99'>email</th></tr>") 
    Response.write "<tr>" 
    Response.Write ("<td>") 
    Response.write rs.GetString(,,"</td><td>","</td></tr><tr><td>","") 
    Response.write "</td></tr></table>" 
    
    Response.flush 
    Response.end 
    
    Set rs=Nothing 
    DBConn.Close 
    Set DBConn= Nothing 
    
    rs.MoveNext 
    loop
    
    invioA =  "email@com.com"
    invioDa =  "email@com.com"
    fileAllegato = "file.xls"
    
    FOR numeroCampi = 1 TO (Request.Form.Count() - 1)
      IF NOT Request.Form(numeroCampi) = "" THEN
        corpoMessaggio = corpoMessaggio & "
    " & Request.Form.Key(numeroCampi) & " = " & Trim(Request.Form(numeroCampi))
    END IF
    NEXT
    
    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields
    
    Flds(cdoSendUsingMethod) = cdoSendUsingPort
    Flds(cdoSMTPServer) = "smtp.aruba.it" 
    Flds(cdoSMTPServerPort) = 25
    Flds(cdoSMTPAuthenticate) = cdoAnonymous ' 0
    Flds.Update
    
    	messaggio = messaggio & VBcrlf & "nome = "&nome&"
    
    "
      	messaggio = messaggio & VBcrlf & "cognome = "&cognome&"
    
    "
      	messaggio = messaggio & VBcrlf & "email = "&email&"
    
    "
    
    With iMsg
    
      Set .Configuration = iConf
      .To = "&email&"
      .From = invioA
      .Bcc = "email@com.com"
      .Sender = invioDa
      .Subject = " ["&nome&"] "
      .HtmlBody = messaggio 
      .AddAttachment ("& fileAllegato &")
      .Send
       
    End With
    
    %>

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Le righe rosse devi eliminarle e queste metterle così:

    codice:
    rs.MoveNext 
    loop
    Set rs=Nothing 
    DBConn.Close 
    Set DBConn= Nothing

    Roby

  3. #3
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Grazie Roby e buon anno!
    Con le modifiche non si genera più il file.xls restituisce errore ed impossibile scaricare il file.xls dal sito http://ww....

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Togli queste righe...
    Response.ContentType = "application/vnd.ms-excel"
    Response.AddHeader "content-disposition", "inline; filename=" & FileName

    Roby

  5. #5
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Così non vedo più i risultati in formato excel ma sempre in asp e soprattutto non ricevo nessun messaggio con allegato...

  6. #6
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Sto cercando di far scrivere il file sul server prima di spedirlo via email, ma non ci riesco...
    codice:
    Function genera(Max, Min, MaxChar) 
    	Dim codice, cifra
    	For i = 1 To MaxChar 
    		Randomize timer
    		codice = Int((Max * Rnd()) + 1) 
    		cifra = cifra & codice
    	Next 
    	genera = cifra
    End Function 
    
    temp_excel_file = lcase(genera(91, 48, 5))
    
    Dim FileName
    FileName=""& temp_excel_file &".xls" 
    
    Response.Buffer = true 
    Response.ContentType = "application/vnd.ms-excel" 
    Response.AddHeader "content-disposition", "inline; filename=" & FileName 
    
    Set fs = CreateObject("Scripting.FileSystemObject")
    path_modello = server.mappath("& FileName &")
    Set a = fs.OpenTextFile(path_modello)
    file_letto = a.readall
    a.Close
    
    path="mdb.mdb" 
    
    Dim DBConn 
    Set DBConn=Server.CreateObject("ADODB.Connection")
     
    Dim rs 
    set rs=Server.CreateObject("ADODB.Recordset") 
    strConn="Provider = Microsoft.Jet.OLEDB.4.0;" 
    strConn= strConn & "Data Source =" & Server.MapPath(path) 
    
    DBConn.Open strConn 
    
    nome = Request.form("nome")
    cognome = Request.form("cognome")
    email = Request.form("email")
    
    set rs = DBConn.Execute("SELECT * FROM anagrafica WHERE nome = '" &nome& "'")
    
    DO while not rs.EOF 
    
    Response.write "<table border=1>" 
    Response.Write("<tr>") 
    Response.Write("<th bgcolor='#FFCC99'>nome</th><th bgcolor='#FFCC99'>cognome</th><th bgcolor='#FFCC99'>email</th></tr>") 
    Response.write "<tr>" 
    Response.Write ("<td>") 
    Response.write rs.GetString(,,"</td><td>","</td></tr><tr><td>","") 
    Response.write "</td></tr></table>" 
    
    rs.MoveNext 
    loop
    Set rs=Nothing 
    DBConn.Close 
    Set DBConn= Nothing
    perchè restituisce File Not Found???

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    O fai una cosa o fai l'altra.
    Quella pagina è costruita per creare al volo un file Excel e visualizzarlo.
    Se lo vuoi anche spedire per email devi cambiare logica.
    Prima lo crei e lo spedisci e poi, in una nuova pagina lo visualizzi a video.

    Roby

  8. #8
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da Roby_72
    O fai una cosa o fai l'altra.
    Quella pagina è costruita per creare al volo un file Excel e visualizzarlo.
    Se lo vuoi anche spedire per email devi cambiare logica.
    Prima lo crei e lo spedisci e poi, in una nuova pagina lo visualizzi a video.

    Roby
    Quale logica devo seguire? come lo creo e come lo spedisco?

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Te l'ho detto: prima lo crei e lo spedisci e poi, in una nuova pagina lo visualizzi a video.

    Roby

  10. #10
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Allora riesco a creare il file excel ma non riesco a spedirlo... questo è il code CDOSYS, errore sulla riga colorata:
    codice:
    path_temp = server.mappath(""& temp_excel_file &".xls")
    ...
    invioA =  "seg@dada.com"
    invioDa =  "seg@dada.com"
    Allegato = "&path_temp&"
    
    Dim objMail, objConfig
    Set objMail = CreateObject("CDO.Message")
    Set objConfig = Server.CreateObject ("CDO.Configuration")
    	
    With objConfig
    .Fields("cdoSendUsingMethod") = cdoSendUsingPort
    .Fields("cdoSMTPServer") = "smtp.aruba.it" 
    .Fields("cdoSMTPServerPort") = 25
    .Fields("cdoSMTPAuthenticate") = cdoAnonymous	 
    .Fields.Update
    End With
    
    Set objMail.Configuration = objConfig
    
    messaggio = messaggio & VBcrlf & "email:
    
    "
    
    With objMail
    
      Set .Configuration = objConfig
      
      .To = Request.form("email")
      .From = invioA
      .Bcc = "seg@com.com"
      .Sender = invioDa
      .Subject = " ciao "
      .HtmlBody = messaggio 
      .AddAttachment (cartella & "\" & Allegato) 
    
      .Send
    
    End With
    CDO.Message.1 error '80070002'

    The system cannot find the file specified.

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.