Ciao,
ho fatto un sistema di invio automatico di email dal sito web all'atto della registrazione di un utente, che dovrebbe inviare un breve messaggio con un link per l'attivazione dell'account.
Codice PHP:
/Definiamo la classe che definisce il corpo del messaggio ($message) e le intestazione del messaggio ($headers)
$boundary = "==MP_Bound_xyccr948x==";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: multipart/alternative; boundary=\"$boundary\"\r\n";
$headers .= "From: [email]webmaster@myemail.com[/email]\r\n";
$headers .= "Bcc: [email]info@email2.com[/email]\r\n";
$html_msg = "
*** INTRANET ***
Dear $name,</p>
- Your Username is: $username
- Your new Password is: $password
- Expiration date is: $expiration</p>
<a href=\"http://www.website.com/pfn/intranet/confreg.php" .
"?id=$msgid\">CLICK HERE TO ACTIVATE YOUR ACCOUNT</a></p>
The password will automatically expired after 60 days. For problems using your account, please contact our support staff at [email='webmaster@website.com']webmaster@website.com[/email] .
Thank you for using Intranet.</p>
------------------------------------------
Company s.r.l.
Tel. +39 000 111111
Fax +39 000 2222222
Web [url='http://www.website.com'][url]www.website.com[/url][/url]</p>
------------------------------------------
";
$confirmmessage .= $html_msg . "\n\n";
$message = "This is a Multipart Message in MIME format\n";
$message .= "--$boundary\n";
$message .= "Content-type: text/html; charset=iso-8859-1\n";
$message .= "Content-Transfer-Encoding: 7bit\n\n";
$message .= $confirmmessage . "\n";
$message .= "--$boundary--";
$mailsent = mail($to, $subject, $message, $headers);
if ($mailsent)
{
header("Location: checkmail.php?mail=$to");
} else {
echo "Email error.";
}
Nella maggior parte dei casi il messaggio arriva nel modo corretto, ma in altri viene ricevuto senza la corretta formattazione e l'utente non può procedere con l'attivazione (come mostrato qui sotto)
Codice PHP:
Content-type: multipart/alternative; boundary="==MP_Bound_xyccr948x=="
From: [email]webmaster@myemail.com[/email]
Message-Id: <20071204162944.0DAC1A068@name.interac.it>
Date: Tue, 4 Dec 2007 17:29:43 +0100 (CET)
This is a Multipart Message in MIME format --==MP_Bound_xyccr948x==
Content-type: text/html; charset=iso-8859-1
Content-Transfer-Encoding: 7bit
*** OGGETTO ***
Dear Kenneth ,</p>
- Your Username is: [email]email@email.com[/email]
- Your new Password is: password
- Expiration date is: 2008-02-02</p>
[url="http://www.website.com/pfn/intranet/confreg.php?id=d4474640d3c8916f91f9cf25c80a5e6a"]CLICK HERE TO ACTIVATE YOUR ACCOUNT[/url]</p>
The password will automatically expired after 60 days. For problems using your account, please contact our support staff at [email='webmaster@myemail.com']webmaster@myemail.com[/email] .
Thank you for using our Intranet.</p>
------------------------------------------
Company s.r.l.
Tel. +39 000 111111
Fax +39 000 222222
Web [url='http://www.website.com'][url]www.website.com[/url][/url]</p>
------------------------------------------
--==MP_Bound_xyccr948x==--
Secondo voi è un problema del codice nella pagina o è dovuto ad altri fattori esterni (tipo il programma di posta del destinatario)?
Grazie in anticipo!