Lo stesso script su diversti server di posta da 3 diversi risultati:
1) YAHOO:
2) LIBERO:
3) HOTMAIL:
Sembra chiaro che su YAHOO funziona tutto bene, su LIBERO non funziona praticamente niente, mentre su HOTMAIL per motivi di sicurezza non visualizza l'immagine ma la inserisce come allegato e solo dopo aver cliccato sull'allegato e avermi chiesto x motivi di sicurezza l'autorizzazione, mi visualizza l'immagine correttamente.
LOGICAMENTE COSI NON PUO ANDARE
Qui di seguito riporto la parte di codice che genera e invia in automatico l'e-mail alla concluzione dell'ordine:
Codice PHP:
<?php
// costruiamo alcune intestazioni generali
$header = "From: Inviante <videodigit@yahoo.it>\n";
$header .= "CC: Altro Ricevente <ale.delta@yahoo.it>\n";
$header .= "X-Mailer: Il nostro Php\n";
// generiamo la stringa che funge da separatore
$boundary = "==String_Boundary_x" .md5(time()). "x";
// costruiamo le intestazioni specifiche per un messaggio
// con parti relazionate
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: multipart/related;\n";
$header .= " boundary=\"$boundary\";\n\n";
// questa parte del messaggio viene visualizzata
// solo se il programma non sa interpretare
// i MIME poiché è posta prima della stringa boundary
$messaggio = "Se visualizzi questo testo il tuo programma non supporta i MIME\n\n";
// costruiamo la sezione in formato html
$messaggio .= "--$boundary\n";
$messaggio .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$messaggio .= "Content-Transfer-Encoding: 7bit\n\n";
//costruiamo il testo in formato HTML
$messaggio .="
<style type=\"text/css\">
<!--
h1{font: 11px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h2{font: 6px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h3{font: 10px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h4{font: 9px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
-->
</style>
<center><table width=\"526px\" cellpadding=\"0\">
<Td>
Il suo ordine è stato inserito correttamete, nella tabella in basso è riportato il totale da pagare</td>
</table>
<center><table width=\"526px\" cellpadding=\"0\">
<tr><td colspan=\"20\" background=\"http://www.amg-computer.com/Immagini/TestaFattura.jpg\" height=\"33\"></td></tr>
";
foreach($Prodotti as $Key=>$Val)
{
$Prodotto=ProdottiSelezionati($Key);
$messaggio .="<center><tr><td width=\"1\" bgcolor=\"silver\"></td><td bgcolor=\"White\" width=\"140px\"><h3>   $Prodotto[Tipo]</td><td width=\"1\" bgcolor=\"silver\"></td><td bgcolor=\"White\" width=\"190px\"><h3>   $Prodotto[Marca] $Prodotto[Tipo]</td><td width=\"1\" bgcolor=\"silver\"></td><td width=\"48\" align=\"right\"><h3>$Val   </td><td width=\"1\" bgcolor=\"silver\"></td><td bgcolor=\"white\" align=\"right\"><h3> <font color=White> ";
$Prezzo=($Prodotto[Prezzo]) * $Val;
$messaggio .="</font>$Prezzo   </td><td width=\"1\" bgcolor=\"silver\"></td><td bgcolor=White width=\"60px\"><center><h3> 20% </td> <td width=\"1\" bgcolor=\"silver\"></td></tr>";
}
$messaggio .= "
<html>
<html>
<style type=\"text/css\">
<!--
h1{font: 11px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h2{font: 6px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h3{font: 10px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
h4{font: 9px Verdana, Arial, Helvetica, sans-serif; size: 1; color: black; text-decoration: none}
-->
</style>
<body>
<tr><td width=\"1\" height=\"30px\" bgcolor=\"silver\"><td></td><td width=\"1\" bgcolor=\"silver\"><td></td><td width=\"1\" bgcolor=\"silver\"><td></td><td width=\"1\" bgcolor=\"silver\"><td></td><td width=\"1\" bgcolor=\"silver\"></td></td><td></td><td width=\"1\" bgcolor=\"silver\"></tr>
<tr><td bgcolor=\"silver\" colspan=12></td></tr>
</table><table width=\"526px\" cellpadding=\"0\" cellspacing=><tr><td bgcolor=\"silver\" height=1 colspan=8></td></tr> <tr><td width=\"1\" bgcolor=\"silver\"></td><th width=\"190\"><h3>
  Totale Imponibile: $Tot  
</td><td width=\"1\" bgcolor=\"silver\"></td>";
$Iva=($Tot*20)/100; $Totale=$Tot+$Iva;
$messaggio .="<th width=\"190\"><h3> Totale Imposta: $Iva </td><td width=\"1\" bgcolor=\"silver\"></td><th bgcolor=\"silver\" width=\"190px\"><h3> [b]<u>  Totale Documento: [b] $Totale   </td><td width=\"1\" bgcolor=\"silver\"></tr><tr><td bgcolor=\"silver\" height=1 colspan=8></td></tr></table>
<table width=\"526px\" cellpadding=\"0\" cellspacing=><th></th></table>
";
// costruiamo la sezione contenente l'immagine
// cui attribuiamo l'id MiaImmagine123
$messaggio .= "--$boundary\n";
$messaggio .= "Content-ID: <TestaFattura>\n";
$messaggio .= "Content-Type: image/jpeg\n";
$messaggio .= "Content-Transfer-Encoding: base64\n\n";
// leggiamo il file corrispondente all'immagine dal nostro server
$allegato = "http://www.amg-computer.com/Immagini/TestaFattura.jpg";
$file = fopen($allegato,'rb');
$data = fread($file,filesize($allegato));
fclose($file);
// usiamo la codifica base64 per trasmettere il file
$data = chunk_split(base64_encode($data));
$messaggio .= "$data\n\n";
// chiusura del messaggio con la stringa boundary
$messaggio .= "--$boundary--\n";
$subject = "Conferma ricezione ordine [url]www.amg-computer.com[/url]";
if( @mail("gonny@hotmail.it", $subject, $messaggio, $header) ) echo "e-mail inviata con successo!";
else echo "errore nell'invio dell'e-mail!";
?>
?>