Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: invio newsletter CDO

  1. #1

    invio newsletter CDO

    Salve ragazzi,
    ho uno script ASP per l'inoltro di una newsletter con CDO su server win2003.

    <%
    'INOLTRO NEWSLETTER PROMOZIONI
    sql = "SELECT * FROM tbl_promozioni WHERE id = 1"
    set objRS = objDbConn.execute(sql)

    promozione_html = objRS("promozione")

    objRS.close
    set objRS = nothing

    strSql = "SELECT * FROM tbl_clienti WHERE stato = 1"
    set client_RS = objDbConn.execute(strSql)

    Dim eMail
    Dim iConf
    Dim Flds

    set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields

    With Flds
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.xxx.it"
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Update
    End With

    do while not client_RS.eof

    email_cliente = client_RS("email")

    'Creiamo l'oggetto mail con CDOSYS
    Set eMail = CreateObject("CDO.Message")

    Set eMail.Configuration = iConf
    'Definiamo i diversi attributi della nostra mail
    eMail.From = "info@xxx.it"
    eMail.To = email_cliente
    eMail.Subject = "Newsletter Promozione"

    'Se il testo è in Html useremo HTMLBody al posto di TextBody
    eMail.HTMLBody = "email_body"

    'Inviamo la mail!
    eMail.Send()

    response.write "
    email_cliente = " & email_cliente
    response.write "
    email_body = " & email_body

    client_RS.moveNext
    loop

    'Eliminiamo l'oggetto...
    Set eMail = Nothing
    Set Flds = Nothing
    Set iConf = Nothing

    client_RS.close
    set client_RS = nothing

    'response.redirect "promozioni.asp?sendMail=true"
    %>
    Nulla, invia la prima del DB e poi va in errore su eMail.Send().
    Mi aiutate please
    lucasweb.it
    web design & development >>>

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi creare, utilizzare e chiudere gli oggetti relativi all'invio email dentro al ciclo non fuori.

    Roby

  3. #3
    <%
    sql = "SELECT * FROM tbl_clienti WHERE stato = 1"
    set client_RS = objDbConn.execute(sql)

    do while not client_RS.eof
    'Recupero email cliente attivo
    email_cliente = client_RS("email")

    'Creiamo l'oggetto mail con CDOSYS
    Dim eMail
    Set eMail = CreateObject("CDO.Message")
    Dim iConf
    Dim Flds

    set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields

    With Flds
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.lucasweb.it"
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Update
    End With

    Set eMail.Configuration = iConf
    'Definiamo i diversi attributi della nostra mail
    eMail.From = "info@lucasweb.it"
    eMail.Sender = "info@lucasweb.it"
    eMail.To = email_cliente
    eMail.Subject = "Newsletter"

    'Se il testo è in Html useremo HTMLBody al posto di TextBody
    eMail.HTMLBody = "email_body"

    'Inviamo la mail!
    eMail.Send()
    response.write "
    email_cliente = " & email_cliente

    'Eliminiamo l'oggetto...
    Set eMail = Nothing

    client_RS.moveNext
    loop

    client_RS.close
    set client_RS = nothing
    %>
    In origine lo script era così come dici tu, ma nemmeno andava.
    Siccome sto letteralmente impazzendo sto facendo delle modifiche
    per capire da cosa possa dipendere.

    Mi invia la prima mail che trova nel db, ma non va oltre e mi si blocca
    sul send() della seconda email
    lucasweb.it
    web design & development >>>

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Sei sicuro che siano più email con stato = 1?
    Le DIM vanno invece fuori dal Loop.

    Roby

  5. #5
    <%
    sql = "SELECT * FROM tbl_clienti WHERE stato = 1"
    set client_RS = objDbConn.execute(sql)

    Dim eMail
    Dim iConf
    Dim Flds

    do while not client_RS.eof
    'Recupero email cliente attivo
    email_cliente = client_RS("email")

    'Creiamo l'oggetto mail con CDOSYS

    Set eMail = CreateObject("CDO.Message")

    set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields

    With Flds
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.lucasweb.it"
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Update
    End With

    Set eMail.Configuration = iConf
    'Definiamo i diversi attributi della nostra mail
    eMail.From = "info@lucasweb.it"
    eMail.Sender = "info@lucasweb.it"
    eMail.To = email_cliente
    eMail.Subject = "Newsletter"

    'Se il testo è in Html useremo HTMLBody al posto di TextBody
    eMail.HTMLBody = "email_body"

    'Inviamo la mail!
    eMail.Send()
    response.write "
    email_cliente = " & email_cliente

    'Eliminiamo l'oggetto...
    Set eMail = Nothing

    client_RS.moveNext
    loop

    client_RS.close
    set client_RS = nothing
    %>
    Sicuro, anche se non eseguo il controllo sullo stato, va sempre in errore.
    Anche se non leggo da db, ma faccio un semplice ciclo for su un array
    di email mi da lo stesso errore.

    Ho messo i Dim fuori, ma nulla.
    Davvero non so che pesci pigliare........
    lucasweb.it
    web design & development >>>

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non è che qualche indirizzo email non è presente nella tabella?

    Roby

  7. #7
    Nel DB ho solo 2 email.
    Ci sono entrambi gli indirizzi.

    Ma lasciando stare il ciclo su DB, anche se leggo un array di
    2 email , lo stesso va in errore.

    E' proprio il componente forse che va utilizzato in altro modo.
    Almeno credo
    lucasweb.it
    web design & development >>>

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Distruggi anche l'altro oggetto:

    Set iConf = Nothing

    Roby

  9. #9
    Nulla !

    error '8004020f'
    lucasweb.it
    web design & development >>>

  10. #10

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.