Las RFC son como los conparables con los estándares, éstas describen la forma correcta de hacer algo para que cumpla con ciertas normas.
Las RFC relacionadas con el correo electronico son RFC 1896, RFC 2045, RFC 2046, RFC 2047, RFC 2048, y RFC 2049.
las podrás encontrar en:
http://www.faqs.org/rfcs/
De cualquier manera no es absolutamente necesario que las conozcas.... He Aquí la Función que utilizo: <? function mkn_html_mail($From,$FromName,$To,$ToName,$Subject,$Text,$Html,$AttmFiles){
$OB="----=_OuterBoundary_000";
$IB="----=_InnerBoundery_001";
$Html=$Html?$Html:preg_replace("/\n/","{br}",$Text)
or die("no se encontró texto o html.");
$Text=$Text?$Text:"para leer esto debe poder leer html";
$From or die("dirección del que envia no se encuentra");
$To or die("direccion destino no se encontró");
$headers ="MIME-Version: 1.0\r\n";
$headers.="From: ".$FromName." <".$From.">\n";
$headers.="To: ".$ToName." <".$To.">\n";
$headers.="Reply-To: ".$FromName." <".$From.">\n";
$headers.="X-Priority: 1\n";
$headers.="X-MSMail-Priority: High\n";
$headers.="X-Mailer: My PHP Mailer\n";
$headers.="Content-Type: multipart/mixed;\n\tboundary=\"".$OB."\"\n";
//
$Msg ="This is a multi-part message in MIME format.\n";
$Msg.="\n--".$OB."\n";
$Msg.="Content-Type: multipart/alternative;\n\tboundary=\"".$IB."\"\n\n";
//texto plano
$Msg.="\n--".$IB."\n";
$Msg.="Content-Type: text/plain;\n\tcharset=\"iso-8859-1\"\n";
$Msg.="Content-Transfer-Encoding: quoted-printable\n\n";
// texto plano
$Msg.=$Text."\n\n";
// HTML
$Msg.="\n--".$IB."\n";
$Msg.="Content-Type: text/html;\n\tcharset=\"iso-8859-1\"\n";
$Msg.="Content-Transfer-Encoding: base64\n\n";
// HTML
$Msg.=chunk_split(base64_encode($Html))."\n\n";
// HTML
$Msg.="\n--".$IB."--\n";
// Archivos
if($AttmFiles){
foreach($AttmFiles as $AttmFile){
$patharray = explode ("/", $AttmFile);
$FileName=$patharray[count($patharray)-1];
$Msg.= "\n--".$OB."\n";
$Msg.="Content-Type: application/octetstream;\n\tname=\"".$FileName."\"\n";
$Msg.="Content-Transfer-Encoding: base64\n";
$Msg.="Content-Disposition: attachment;\n\tfilename=\"".$FileName."\"\n\n";
//Archivo
$fd=fopen ($AttmFile, "r");
$FileContent=fread($fd,filesize($AttmFile));
fclose ($fd);
$FileContent=chunk_split(base64_encode($FileContent));
$Msg.=$FileContent;
$Msg.="\n\n";
}
}
//fin del mensaje
$Msg.="\n--".$OB."--\n";
$yy=mail($To,$Subject,$Msg,$headers);
return $yy;
}
?>
Esto es lo pones en un archivo php y lo incluís en las páginas en las que quieren enviar un mail, luego simplemente llamas a la función de la siguiente forma:
mkn_html_mail("Email del que envia", "nombre del que envia","email destino","nombre del recipiente","asunto","variable texto plano","variable con texto formateado con html","adjuntos") bien, dentro de la variable que contiene tu mensaje con formato html, se encontrara en donde quieras algo asi <img src=
http://tudominio.com/imagenes/tuimagen.jpg>
Y listo!