Enviar email con PHP

12/Sep/2015 PHP 4 Comentarios
programación php

Para enviar email con PHP lo más sencillo es que utilicemos la función mail() que nos ofrece el lenguaje. Esta función mail() se apoya en el programa sendmail para realizar el envío de los email. Sendmail suele venir configurado con todas las instalaciones de los servidores PHP.

En el caso de que no lo tengas instalado te recomiendo que le eches un ojo a la configuración del mail en PHP.

Pasemos a ver como sería nuestro código PHP. Podremos comprobar que para enviar email con PHP se necesitan muy pocas líneas.

Lo primero que tenemos que hacer es definir dos variables que contengan el título del mensaje y el mensaje en sí.

$titulo = 'Enviando email desde PHP';
$mensaje = 'Este es el primer email que envío desde PHP';

Dentro del mensaje podemos incluir saltos de línea mediante los caracteres escapados ‘\r\n’:

$mensaje = 'Este es el primer email\r\nque envío desde PHP';

Lo siguiente será definir otra variable con el mail de la persona a la que enviamos el mensaje:

$para = '[email protected]';

Ya solo nos quedará invocar a la función mail() para poder enviar mail con PHP. A dicha función le pasaremos como parámetro las variables $para, $titulo y $mensaje en ese orden.

$enviado = mail($para, $titulo, $mensaje);

if ($enviado)
  echo 'Email enviado correctamente';
else
  echo 'Error en el envío del email';

La función mail() devuelve true si se ha podido procesar el mensaje y false en caso contrario. Es por ello que una simple validación nos puede servir para informar al usuario.

Con esto ya habremos conseguir enviar email con PHP. Pero hay un pequeño detalle en el que tenemos que hacer hincapié. Y es que a nuestro destinatario le aparecerá como origen del mensaje el usuario que tengamos configurado por defecto en el programa de envío de email. Si usas un servidor es probable que sea un usuario diferente al tuyo.

Así que vamos a definir una cuarta variable que será el origen. Para ello debemos de ponerlo en la cabecera del mensaje.

$cabeceras = 'From: Mi Nombre';

Este parámetro se lo pasaremos también a la función mail().

$enviado = mail($para, $titulo, $mensaje,$cabeceras);

Así, con estas pocas líneas habremos conseguido enviar email con PHP.

Vídeos sobre PHP


4 comentarios en “Enviar email con PHP”

Víctor Cuervo

Facu

Hola! Desde ya muchísimas gracias por la explicación.

El subir estos archivos a firebase, al completar el formulario y darle enviar, me descarga el archivo enviar.php y que hice con el código en php y en consola me muestra ‘Resource interpreted as Document but transferred with MIME type application/x-httpd-php: myurldehost.com/enviar.php’ y no me llega ningún email :(

¿Sabes qué podría ser?

Víctor Cuervo

Rafael Apesoa

Hola. Consulto en una base de datos el nombre de una persona, y tomo el correo de ella en una variable (mail),pero resulta que en el momento de enviar el e-mail no me toma el contenido de la variable. Como se define en ese caso?. Gracias

Víctor Cuervo

imelda

perdon, pero en que parte se incluye la funcion mail()??

Víctor Cuervo

Víctor Cuervo

Debería de ir configurada en el propio php, en el fichero php.ini.
Todos lo servidores web lo suelen llevar configurado.

Saludos.

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.