Hagamos que México crezca..

Prefiere el consumo de lo Hecho en México

Prefiere el consumo de lo Hecho en México
BúsquedaHagamos que México crezca..
![]() Prefiere el consumo de lo Hecho en México Posts Recientes
Conversación |
¿Como enviar correos usando SMTP en formato HTML ?Hace unos días un amigo me contactó para preguntarme si sabía como enviar correos en formato HTML usando el protocolo SMTP, por lo que me acordé que hace unos 5 años desarrollé un sistema de cotizaciones vía web para la empresa dónde trabajaba, ahí enviaba correos mediante SMTP para informar de las cotizaciones que generaban los clientes desde la aplicación web.
Por lo que pongo aquí la clase que usé y que es muy fácil de usar, este código requiere de PHP PEAR Mail, el código está algo sucio pero es funcional
<?php require_once "Mail.php"; require_once "Mail/mime.php"; class Correo{ private $_mail_data = array(); private $to = ""; private $subject = ""; private $body = ""; private $smtpout = null; //SMTPLOGIN, SMTPPASSWORD, SMTPSERVER, SMTPPORT, MAILFROM public function __construct( $vlogin, $vpassword, $vserver="smtpout.secureserver.net", $vport="80", $vfrom= "") { $this->_mail_data = array ( 'host' => $vserver, 'auth' => true, 'username' => $vlogin, 'password' => $vpassword, 'port'=>$vport ); $this->crlf = "\n"; $this->from = $vfrom; $this->smtpout = Mail::factory('smtp', $this->_mail_data); } //Envía un correo en Texto Plano public function sendTextMail($to="", $subject="", $body="", $vfrom=""){ $_headers = array ( 'From' => ( ($vfrom!="")?$vfrom: $from), 'To' => $to, 'Subject' => $subject); //print_r ($this->_mail_data); $this->smtpout->IsHTML(true); $mail = $this->smtpout->send($to, $_headers, $body); return !(PEAR::isError($mail)); } //Envía un correo como HTML public function sendmail($to="", $subject="", $body="", $vfrom=""){ $_headers = array ( 'From' => ( ($vfrom!="")?$vfrom: $from), 'To' => $to, 'Subject' => $subject); $mime = new Mail_mime($this->crlf); $mime->setHTMLBody($body); // $mime->addAttachment($file, 'text/plain'); //do not ever try to call these lines in reverse order $body = $mime->get(); $_headers = $mime->headers($_headers); $mail = $this->smtpout->send($to, $_headers, $body); return !(PEAR::isError($mail)); } }//fin de la clase //Objeto de la clase $correo = new Correo("SMTPUSER", "SMTPPASSWORD", "smtpout.secureserver.net", "80", "SMTPFROM"); //Envio de correo en formato HTML $correo->sendmail("CORREODESTINATARIO@gmail.com", "SUBJECT", "MENSAJE_EN_FORMATO_HTML", "MAIL_FROM"); ?> Espero pueda serle útil a alguien más. Dejar un comentario
Fuentes XML de comentario: RSS | Atom
|
Nube de EtiquetasEventosEncuestaComentarios Recientes
|
#1 Re:¿Como enviar correos usando SMTP en formato HTML ?
Este archivo enlaza con un mail y mime.php
Calculo que estos deben tener el usuario y contraseña para enviar el correo, pero no esta el contenido en sus paginas. Puede enviarmelo? Gracias