Cdonts

questa è la pagina di invio:

<table align="center" cellpadding="10" cellspacing="0" style="border: 1px Solid #192939" width="364" height="1">
<form name="modulo" method="post" action="mail/email.asp">
<tr>
<td width="340" height="33">
<table border="0" width="100%">
<tr>
<td width="47%"><font face="Verdana" size="1" color="#666666"><b>
Nome o Ragione Sociale&nbsp;&nbsp;</b></font></td>
<td width="53%"><font face="Verdana" size="1" color="#666666"><b><input type="text" name="nome" class="txt"></b></font></td>
</tr>
<tr>
<td width="47%"><font face="Verdana" size="1" color="#666666"><b>
Sito web&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></font></td>
<td width="53%"><font face="Verdana" size="1" color="#666666"><b><input type="text" name="cognome" class="txt"></b></font></td>
</tr>
<tr>
<td width="47%"><font face="Verdana" size="1" color="#666666"><b>
Email&nbsp;&nbsp;</b></font></td>
<td width="53%"><font face="Verdana" size="1" color="#666666"><b><input type="text" name="email" class="txt"></b></font></td>
</tr>
<tr>
<td width="47%"><font face="Verdana" size="1" color="#666666"><b>
Oggetto&nbsp;</b></font></td>
<td width="53%"><font face="Verdana" size="1" color="#666666"><b><input type="text" name="oggetto" class="txt"></b></font></td>
</tr>
<tr>
<td width="47%"><font face="Verdana" size="1" color="#666666"><b>
Importanza</b></font></td>
<td width="53%"><font face="Verdana" size="1" color="#666666"><b><select name="importanza">
<option value="0">Bassa</option>
<option value="1">Media</option>
<option value="2">Alta</option>
</select></b></font></td>
</tr>
</table>
<p><font face="Verdana" size="1" color="#666666"><b><br>
Messaggio<br>
<textarea name="messaggio" rows="7" cols="20" style="width: 338; height: 55"></textarea>
</b></font></p>
</td>
</tr>
<tr>
<td align="center" width="340" height="1">
<font face="Verdana" size="1" color="#666666"><b>
<input type="checkbox" name="html"> In formato Html&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" value="Invia" class="sub">
</b></font>
</td>
</tr>
</form>
</table>
 
Questo è il send by Padre luke:

[<%
// Recupero i dati dal modulo
var nome = new String(Request.Form("nome"));
var cognome = new String(Request.Form("cognome"));
var email = new String(Request.Form("email"));
var oggetto = new String(Request.Form("oggetto"));
var importanza = new String(Request.Form("importanza"));
var messaggio = new String(Request.Form("messaggio"));
var html = new String(Request.Form("html"));

// RegExp per l'email
var valida = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;

// Imposto la data
var oggi = new Date();
var data = oggi.getDate() + "/" + (oggi.getMonth() + 1) + "/" + oggi.getYear() + " alle ore " + oggi.getHours() + ":" + oggi.getMinutes();

// Imposto l'indirizzo IP del mittente
var ip = Request.ServerVariables("REMOTE_ADDR");

// Controllo la validità dei campi
if ((nome == "") || (nome == "undefined")) Response.Redirect("mail/errore.htm?id=1");
if ((cognome == "") || (cognome == "undefined")) Response.Redirect("mail/errore.htm?id=2");
if (!valida.test(email)) Response.Redirect("errore.htm?id=3");
if ((oggetto == "") || (oggetto == "undefined")) Response.Redirect("mail/errore.htm?id=4");
if ((messaggio == "") || (messaggio == "undefined")) Response.Redirect("mail/errore.htm?id=5");

// Creo la classe CDONTS.NewMail ed invio l'email
var OggettoCDONTS = new ActiveXObject("CDONTS.NewMail");
OggettoCDONTS.Importance = importanza;
OggettoCDONTS.From = email;
OggettoCDONTS.To = "[email protected]"; //
OggettoCDONTS.Subject = oggetto;
// Verifica se la mail è in formato Html
if ((html == "") || (html == "undefined")) {
OggettoCDONTS.BodyFormat = 1;
OggettoCDONTS.MailFormat = 1;
OggettoCDONTS.Body = "Dati del mittente\n\nNome: " + nome + "\nCognome: " + cognome + "\nEmail: " + email + "\nIP: " + ip + "\n\nMessaggio spedito il " + data + "\n\nQuesto è il corpo del messaggio:\n\n" + messaggio;
}
else {
OggettoCDONTS.BodyFormat = 0;
OggettoCDONTS.MailFormat = 0;
OggettoCDONTS.Body = "<b>Dati del mittente<br><br>Nome:</b> " + nome + "<br><b>Cognome:</b> " + cognome + "<br><b>Email:</b> " + email + "<br><b>IP</b>: " + ip + "<br><br><i>Messaggio spedito il " + data + "</i><br><br><b>Questo è il corpo del messaggio:</b><br><br>" + messaggio;
}
OggettoCDONTS.Send();

// Reindirizzo il mittente verso la pagina di conferma
Response.Redirect("mail/conferma.htm");
%>/QUOTE]
Cosa è successo???
 
Fammi capire un po... hai provato ad inviare qualche mail ed è arrivata, poi per "miracolo" non arrivano più?

A volte capita che i server si intasino, ma se il codice ha funzionato una volta non impazzisce da solo, stai tranquillo ;)

Fai qualche altra prova ad inviare email e fammi sapere ;)

Luca
 
Originally posted by lukeonweb
Fammi capire un po... hai provato ad inviare qualche mail ed è arrivata, poi per "miracolo" non arrivano più?

A volte capita che i server si intasino, ma se il codice ha funzionato una volta non impazzisce da solo, stai tranquillo ;)

Fai qualche altra prova ad inviare email e fammi sapere ;)

Luca
Hai proprio ragione.
Ho cambiato e-mail e funge benissimo.
Deve essere un problema di server(li mortacci loro però: se un un cliente mi spedisce na mail a lui esce il messaggio mail inviata con successo però) come faccio???
è possibile mandare la mail a più indirizzi???
 
Sono anni che uso CDONTS e sono anni che mi fa impazzire... purtroppo spesso e volentieri CDONTS si blocca e smette di inviare la posta... soprattutto CDONTS non è stato ideato per grossi carichi di lavoro... se continui a speddire mail a raffica si blocca e poi... riparte...
Prova a fare un restart di CDOINTS e vedrai che tutto funziona...

Io ora uso uno scriptino CFML (Cold Fusion) e va che è una meraviglia...
 
Originally posted by grottafelix
Devo avere un server che supporti cfm???

ovvio... ma puoi penderne uno gratuito, metterci lo script di elaborazione e fare il redirect ad una pagina di conferma nel tuo sito!

php è una delle soluzioni migliori e comunque per asp ci sono activex migliori, ma sono a pagamento... cdonts inoltre soffre di alcuni limiti che non definisco bug... ma tra il gratis è il migliore... se non l'unico :D
 

Discussioni simili