Enviar correo electrónico con PHP - PHPMailer
Si, alguna vez necesitamos enviar un correo electrónico con PHP, gracias a la recomendación de http://twitter/ivonsue conocí una librería de PHP, llamada PHPMailer; la cual facilita en definitivo el envió de email con PHP; entre sus características tenemos:
- La opción de enviar datos adjuntos.
- Elegir Servidor SMTP.
- Tipo de Seguridad SMTP.
- Cuerpo del mensaje personalizado con HTML.
- Cuenta a la que se responderá el email.
- Etc…
En fin, sus bondades son muchas, pasemos a lo que nos importa.
Crear pagina PHP que envié correo utilizando una cuenta de terra.com.mx
1.- Nos creamos una cuenta en terra.com.mx especialmente para enviar correos desde allí.
2.- Bajamos la librería de PHPMailer de aqui
3.- Levantamos nuestro servidor ( en este caso utilizo XAMPP ).
4.- Creamos un archivo php con lo siguiente:
1: < ?php< /pre> 2: require( "class.phpmailer.php" );
3: $mail = new PHPMailer();
4: $mail-> IsSMTP();
5: $mail-> SMTPAuth = true ;
6: //$mail-> SMTPSecure = "ssl";
7: $mail-> Host = "smtp.terra.com.mx" ;
8: $mail-> Port = 587;
9: $mail-> Username = 'micorreodeterra@terra.com.mx' ;
10: $mail-> Password = "myPassWord" ;
11: //> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
12: //====== DE QUIEN ES ========
13: $mail-> From = "micorreodeterra@terra.com.mx" ;
14: $mail-> FromName = "Mi Nombre" ;
15: $mail-> AddAttachment( "images/foto.jpg" , "foto_regalo.jpg" ); //Archivo adjunto
16: //====== PARA QUIEN =========
17: $mail-> Subject = "Test Mail" ;
18: $mail-> AddAddress( "juanscutiaa@terra.com.mx" , "Para ti juan" );
19: $mail-> AddAddress( "albertinn@hotmail.com" , "Para ti alberto" );
20:
21: //Cuerpo del mensaje
22: $mail-> Body = "HOLA ESTO ES UNA PRUEBA" ;
23: $mail-> Send();
24: ?>
5.- Colocamos nuestro archivo php en la misma carpeta que los archivos class.phpmailer.php y class.smtp.php que descargamos de la pagina de phpMailer.
6.- Para probar nuestra pagina basta con abrir nuestro explorador e ingresar la dirección de nuestra pagina que acabamos de hacer.
«Por ultimo me gustaría explicar un poco el código de la pagina para no dejar alguna duda, a mi parecer es bastante sencillo pero quien sabe
»
En la línea:
1: require( "class.phpmailer.php" );
Simplemente "importamos" los métodos necesarios de la clase phpmailer
En la línea:
1: $mail = new PHPMailer();
Creamos un objetos de tipo PHPMailer, para poder interactuar con sus
métodos.
En las líneas:
1: $mail-> IsSMTP();
2: $mail-> SMTPAuth = true ;
3: //$mail-> SMTPSecure = "ssl";
4: $mail-> Host = "smtp.terra.com.mx" ;
5: $mail-> Port = 587;
6: $mail-> Username = 'micorreodeterra@terra.com.mx' ;
7: $mail-> Password = "myPassWord" ;
Configuramos el SMTP de terra.com.mx
colocamos los datos de nuestra cuenta de terra.
En las líneas:
1: //====== DE QUIEN ES ========
2: $mail-> From = "micorreodeterra@terra.com.mx" ;
3: $mail-> FromName = "Mi Nombre" ;
4: $mail-> AddAttachment( "images/foto.jpg" , "foto_regalo.jpg" ); //Archivo adjunto
5: //====== PARA QUIEN =========
6: $mail-> Subject = "Test Mail" ;
7: $mail-> AddAddress( "juanscutiaa@terra.com.mx" , "Para ti juan" );
8: $mail-> AddAddress( "albertinn@hotmail.com" , "Para ti alberto" );
Configuramos departe de quien es el correo y si deseamos agregar algun archivo adjunto como en este caso una foto que se encuentra en la carpeta images, entonces haremos uso del método AddAttachment , de igual forma colocamos el Asunto del mensaje y los distintos destinatarios, si deseamos agregar mas destinarios simplemente lo hacemos con el método AddAddress.
Ya por ultimo en las líneas:
1: //Cuerpo del mensaje
2: $mail-> Body = "HOLA ESTO ES UNA PRUEBA" ;
3: $mail-> Send();
Escribimos el cuerpo del mensaje –> Body y enviamos el correo con –> Send()
Si desean tener una mayor seguridad de que el correo se envió correctamente pueden agregar una condición de la siguiente forma:
1:
2: if ($mail-> Send()) {
3: echo "Mensaje enviado correctamente" ;
4: } else {
5: echo "Error al enviar mensaje: " . $mail-> ErrorInfo;
6: }
Si todo sale correctamente ustedes verían el correo algo similar a esto:
*Es muy importante tomar en cuenta que este ejemplo es inseguro ya que al dejar en "texto plano" la contraseña de la cuenta, esta podría ser leída con facilidad.
Gracias Sue
Update: 21-Marzo-2011
Si desean agregar un mensaje que acompañe el mail, basta con agregar las siguientes líneas:
1: $htmlBody = "HTML EmailTituloEsto es un link http://darkchicles.wordpress.com\ title=\"Blog darkchicles\"> Da clic para visitar el blog Tu puedes colocar etiquetas html como lo quieras"
;
2:
3: $mail-> Body=$htmlBody;
4: $mail-> isHTML( true );
Body, es el cuerpo del mail, allí podremos ocupar código html.
Mas info:
PHP Mailer Tutorial (en ingles)
Enviar email con PHPMailer utilizando tu cuenta de Gmail
Otro ejemplo para enviar correos con PHPMailes desde tu propio smtp
Configurar Outlook 2007 con cuenta de hotmail
PHPM@iler: http://phpmailer.worxware.com/
Like Be the first to like this post. 6 comentarios
Deja un comentario Cancelar respuesta
Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *
Correo electrónico *
Web
Comentario
Recibir siguientes comentarios por correo.
Recibir nuevas entradas por email.
- Buscar por:
- Encuesta View This Poll
- Categorías
- •»Hablemos de…
- •»Huevos de yoshi (Ocio)
- •»Microsoft Developers
- •»Sin pelos en la Lengua
- ? Java JSP
- ? JavaScript
- ? jQuery
- ? Linux
- ? PHP
- ? PostgreSQL
- ? Talleres
- ?Encuestas
- ?Geek
- ?Imagine Cup
- ?Infraestructura
- ?Microsoft Office
- ?SQL Server
- ?Sue y Ger
- ?Tutoriales
- ?Visual Stuido
- ?Web Slices
- ?Windows 7
- ?Windows Azure
- ?Windows Live
- ?Windows Server
- ?Windows Vista
- ?Windows XP
- General
- Archivos
- mayo 2011
- marzo 2011
- febrero 2011
- enero 2011
- octubre 2010
- agosto 2010
- julio 2010
- junio 2010
- mayo 2010
- abril 2010
- marzo 2010
- febrero 2010
- enero 2010
- diciembre 2009
- noviembre 2009
- octubre 2009
- septiembre 2009
- agosto 2009
- julio 2009
- junio 2009
- mayo 2009
- abril 2009
- marzo 2009
- febrero 2009
- enero 2009
- diciembre 2008
- noviembre 2008
- octubre 2008
- septiembre 2008
- agosto 2008
- julio 2008
- junio 2008
- mayo 2008
- abril 2008
- marzo 2008
- Si lees y no comentas
Yoshi se come un DOMO KUN
- Comentarios recientes
WILSON on Activar IIS en Windows 7
Chinchu on Crea una cuenta de correo del …
Gustavo Godoy on Activar IIS en Windows 7
Johnny on Quitar clave a una hoja de Exc…
Eduardo on Crea una cuenta de correo del …
- Posts Más Vistos
- Creative Commons

- StatCounter
// /* */ _qoptions={qacct:'p-18-mFEk4J448M', labels:'language.es, type.wpcom, posttag.%e2%96%ba-php, posttag.con-php, posttag.configurar-phpmailer, posttag.configurar-smtp, posttag.correo, posttag.email-con-php, posttag.enviar-correo, posttag.enviar-correo-php, posttag.mailer, posttag.mailing, posttag.php-email, posttag.phpmailer, posttag.smtp, posttag.terra, as'};
![]()
Añade tu comentario
Comentarios de Enviar correo electrónico con PHP - PHPMailer
Sobre esta noticia
Autor: Darkchicles (9 noticias)
Fuente: darkchicles.wordpress.com
Visitas de esta noticia: 1827
Tipo: Reportaje
-
1De cómo los virus y códigos maliciosos entran en la red
-
2Lanzamiento Hito de Adobe CS6
-
3Como enviar un correo masivo sin cometer spam en un servicio de autoresponder broadcast
-
4Estructura de archivos de un tema de WordPress (parte 3)
-
5Pon una página web en el SpotLight usando WebSpot
-
6Un nuevo troyano amenaza los Mac







Descargar archivos fuentes








Que padre empezare a creear mi página agregandole la opcion de correo.
Gracias Chickles y Sue por aportar apuntes como este que a varios les puede servir como a miguelito(osea yo) jejejeje.
Buenos Dias mi estimado Darkchicles
que tal ehh, ya tenia un rato que no veia algo nuevo y apenas entro y veo un buen aporte en php, sigue publicando con el buen animo de siempre.
Saludos a Sue
sadasdsd
dsfsgfdgdgdfgdgdfgdgg gfdgdfgdfg
Interesante el tema, pero como le hago si tengo un formulario y quiero adjuntar un archivo y enviarlo. porque alli adjuntas algo pero ya defines tu archivo..en cambio yo lo quiero mostrar un sitio con el formulario que adjunte archive y que lo envie… Urgente ayudenme
Una forma de hacerlo es que implementaras un ‘ UPLOAD’ donde el servidor reciba el archivo deseado, y posteriormente hagas referencia a el (adjuntar), cuando envies el mail. Espero te sea util esta idea.