Esta pequeña clase en PHP permite usando las librerías de PEAR Mail enviar mensajes de una forma fácil, controlando su envió, adjuntado HTML, vídeos, fotos, etc..
Pero normalmente todos los ejemplo suelen estar en ingles y claro nosotros los Castellano parlantes, necesitamos acentos, eñes o cualquier signo no incluido en el standard US-ASCII
- <?php
-
- require_once 'Mail.php';
- require_once 'Mail/mime.php';
-
- class send_mail {
- var $host;
- var $charset;
- var $msg;
- var $auth;
- var $user;
- var $password;
-
- function send_mail() {
- $this->host='localhost';
- $this->charset='UTF-8';
- $this->msg='';
- }
-
- function host($host) {
- $this->host=$host;
- }
-
- function auth($user, $password) {
- $this->auth=true;
- $this->user=$user;
- $this->password=$password;
- }
-
- function charet($charset) {
- $this->chaset=$charset;
- }
-
- function Attachment($file) {
- }
-
- function body($msg) {
- }
-
- function body_html($msg) {
- }
-
- function send($from, $to, $subject)
- {
- $message = new Mail_mime();
- $message->setHTMLBody($this->msg);
-
- $message->addAttachment($file);
- }
- }
-
-
- $extraheaders = array("From" => $from, "Subject" => mb_encode_mimeheader($subject, 'ISO-8859-1', 'Q'), "Date" => date("D , d M Y H:i:s O"));
- $headers = $message->headers($extraheaders);
-
- return $mail->send($to, $headers, $body);
- }
- }
-
- ?>
-
Código de ejemplo:
- <?php
-
- // Abrimos la clase
- $mail = new send_mail;
-
-
- // Adjuntamos el archivo
- $mail->Attachment('ventas.pdf');
-
- // Insertamos el cuerpo del mensaje
- $mail->body('Lararala tralara');
-
- // Enviamos el mensaje
- $res=$mail->send('
Esta dirección electrónica esta protegida contra spam bots. Necesita activar JavaScript para visualizarla
', '
Esta dirección electrónica esta protegida contra spam bots. Necesita activar JavaScript para visualizarla
', 'Informe de ventas');
-
- // Comprobamos el resultado
- if (PEAR::isError($res)) {
- echo "Error en el envió";
- }
-
- ?>
Referencias:









comentarios
He estado consultando tu clase send_mail, pero si hay alguna tilde o caracter extraño que pasa por los headers del mime, tu te limitas a cortar la cadena, y creo que no seria la solución no???
La solución seria codificarlo de alguna manera para que se mostraran las tildes correctamente cuando se realiza en envio.
Tienes alguna idea para esto? Estoy intentando hacerlo yo también.
Saludos.
Suscripción de noticias RSS para comentarios de esta entrada.