da CDONTS a CDOSYS

AlvinCA83

Nuovo Utente
9 Ago 2007
2
0
0
Ciao a tutti,

sono nuovo del forum e del linguaggio ASP. Sono riuscito a trovare una Newsletter però ho un problema perchè mi è sembrato di capire che il server su cui è hostato il programma non accetta CDONT. Ho provato a leggere il post di "POLE" in merito alla modifica della sintassi vbscript, java, non ho capito molto bene, ma non ci sono riuscito. Non è che potreste darmi una mano? Vi ringrazio

Ecco il codice originario:

<%
sub sendmail(recipient,bccrecipient,senderemail,subject,message)
Set objCDO = Server.CreateObject("CDO.NewMail")
recipients=split(recipient,",")
for x=0 to ubound(recipients)
objCDO.To = recipients(x)
next
if bccrecipient<>"" then
bccrecipients=split(bccrecipient,",")
for x=0 to ubound(bccrecipients)
objCDO.bcc = bccrecipients(x)
next
end if
objCDO.From = defaultemail
objCDO.Value("Reply-To") = senderemail
objCDO.Subject = subject
objCDO.Body = message
objCDO.Send
Set objCDO = Nothing
end sub
%>
 

mentino

Nuovo Utente
31 Ago 2007
3
0
0
CreateMHTMLBody

Scusate se mi inserisco in questa discussione ma la ritengo molto vicina al mio problema.

Utilizzando CDOSYS è possibile inviare direttamente una pagina html (o asp) senza dover "riscrivere" tutto il codice utilizzando createMHTMLBody.

A differenza di htmlbody infatti non occorre riscrivere tutto il codice inserendo fra l'altro nel corpo dello script molti "" doppi "" per evitare errori.
Con CreateMHTMLBody di contro è sufficiente inserire:"http://www.miosito.it/pagina.asp" e l'intera pagina con tanto di formattazione css ed altro viene spedita (naturalmente i riferimenti interni alla pagina per css o immagini o file da includere devono essere relativi sempre all'indirizzo completo sul server)

(correggetemi se sbaglio)
Però, dopo aver provato entrambi i metodi ho riscontrato un difetto che
anche se può sembrare banale per alcune pagine con molte foto diventa perlomeno fastidioso.
Mentre con htmlbody viene inviata per email la pagina senza le immagini (ma solo con i relativi script src......) con CreateMHTMLBody vengono inviati i codici delle foto centuplicando così il peso dell'email.

Esiste una soluzione ?
Spero di essermi spiegato bene.

Grazie per l'eventuale risposta
 

mentino

Nuovo Utente
31 Ago 2007
3
0
0
grazie

Grazie per la pronta risposta
Ho provato lo script e direi che funziona egregiamente

Ha solo un "difetto" è in Jscript mentre la pagina all'interno del quale dovrebbe poi essere inserito è interamente in VB.

Lo script infatti andrebbe inserito all'interno di un ciclo che legge da un DB l'email, nome utente, richiama e personalizza la pagina con il nome, e poi infine spedisce.
Passa poi al successivo iscritto e ripete il ciclo

Ho provato ad inserire il codice con le dichiarazoni <script language=javascript> e relativo tag di chiusura, ma non funziona.

Anzichè tradurre l'intera pagina in Js, se fosse possibile mi sembra più veloce tradurre la script in VB (se si può) ma io non sono in grado.
Mi potete aiutare?
Grazie comunque.
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
46
Napoli
www.lucaruggiero.it
eddai un po di fantasia :)

<%@LANGUAGE = VBScript%>
<%
Dim richiesta, email
Set richiesta = Server.CreateObject("Msxml2.XMLHTTP.4.0")
richiesta.Open("GET", "http://www.indirizzo.it/pagina.htm", False)
richiesta.Send()
Set email = Server.CreateObject("CDONTS.NewMail")
email.From = "[email protected]"
email.To = "[email protected]"
email.Subject = "Guarda la pagina che ti ho spedito!"
email.BodyFormat = 0
email.MailFormat = 0
email.Body = richiesta.responseText
email.Send
Response.Write "Email inviata con successo"
Set email = Nothing
Set richiesta = Nothing
%>

l'ho tradotta in vb ad occhio, al volo, ma dovrebbe funzionare ;)
 

mentino

Nuovo Utente
31 Ago 2007
3
0
0
Cdosys

Grazie per la risposta
In efetti pur avendo postato stavo smanettando per trovare anche da
solo la soluzione, anche perchè devo usare CDOSYS (server Aruba)

Le parentesi nell'istruzione richiesta.Open("GET", "http://www.indirizzo.it/pagina.htm", False)
generano un errore in quanto viene interpretata come sub routine

La soluzione che alla fine ho trovato, anche considerando come detto l'utilizzo di CDOSYS è la seguente:

Set richiesta= Server.CreateObject("Msxml2.XMLHTTP.4.0")

richiesta.Open "GET", paginaDaInviare, False
richiesta.Send
' Spedisco la news
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
With iMsg
Set .Configuration = iConf
.To = email
.From = "[email protected]"
.Sender = "[email protected]"
.Subject = oggetto
.HtmlBody = richiesta.responseText
.Send
End With
Set richiesta= Nothing

chiaramente le variabili paginaDaInviare, email e oggetto vengono generate prima
Ho provato e sembra che tutto funzioni bene.

Come avrai capito però non ho padronanza degli script, provo, riprovo e chiedo, poi se riesco modifico
Ho però sempre il dubbio di "lasciare qualcosa aperto" il classico "bug"
Ad esempio nelle istruzioni fornite da Aruba non ho trovato la chiusura del Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields
mentre ho notato che nello script da te elaborato hai chiuso
Set email = Nothing
E' necessario farlo anche con CDOSYS ?

Puoi per cortesia controllarmi se è tutto OK ?
Grazie ancora per la pazienza.
Vorrà dire che ti offrirò da bere

:beer:
ecco fatto.
 

traverso

Nuovo Utente
3 Gen 2008
2
0
0
sono un incapace ehehe

salve a tutti, sono nuovissimo di programmazione e di questo forum ma avrei un grande bisogno di aiuto!
ho letto in giro nel forum cercando una soluzione al mio problema ma la mia inesperienza nel campo non mi ha aiutato poi molto...

vi spiego il mio problema, devo creare un form contatti su di un sito hostato su aruba

avrei bisogno di pochi semplici parametri quali:
1)nome del mittente
2)url del mittente
3)allegare file dimenzioni massime 140x70
ed inviare il tutto ad un email... qualcuno può aiutarmi?
avrei bisogno del codice completo e di una breve spiegazione passo passo di come creare i file e dove posizionarli....please, mi manca solo questo per completare il sito :dipser:
 
Discussioni simili
Autore Titolo Forum Risposte Data
W Form da CDONTS a CDOSYS Classic ASP 7
D errore 424 da cdonts a cdosys Classic ASP 0
F modificare da cdonts a cdosys Classic ASP 2
I Convertire CDONTS in CDOSYS Classic ASP 7
grottafelix da CDONTS a CDOSYS Classic ASP 5
G form con cdosys al posto di cdonts...come fare Classic ASP 1
L Problema con cdonts su aruba Hosting 4
asevenx errore durante l'invio di email con CDONTS Classic ASP 8
seranto cdonts o aspSmartMail Classic ASP 2
J cdonts Classic ASP 2
R Problema con CDONTS Classic ASP 7
R xp e cdonts Classic ASP 1
S usare cdonts Classic ASP 1
A problema con invio e-mail con CDONTS Classic ASP 0
J formattare testo x mails +cdonts Classic ASP 1
C cdonts x inviare una pagina asp Classic ASP 1
G invio email con cdonts? Classic ASP 2
grottafelix Cdonts Classic ASP 15
jan267 Componente CDONTS Classic ASP 2
P Nome del file allegato alla email inviata con CDOSYS Classic ASP 0
I [Risolto] Problemi invio e-mail con CDOSYS con domini @live.it Classic ASP 4
M Cdosys Invio copia email a utente Classic ASP 19
L Newsletter con comando cdosys??? Classic ASP 11
M configurazione cdosys su server web Web Server 0
I problema assurdo con CDOSYS Classic ASP 0
D Usare CDOSYS con il proprio indirizzo Classic ASP 4
M Cdosys aruba e form con allegati Classic ASP 12
I Problema con form ASP-CDOSYS 2: la vendetta Classic ASP 4
C Cdosys Classic ASP 6
I Problema con form ASP-CDOSYS Classic ASP 2
T CDOsys non funziona con le immagini Classic ASP 1
M il loop per l'invio mail con CDOSYS ad un tratto non funziona più Classic ASP 1
J Cdont-cdosys-cdo Classic ASP 27
P Da cdont a cdosys Classic ASP 1

Discussioni simili