Enviar Correos con PHP

Enviar Correos con PHP

PHP

PHP nos permite enviar correos de manera bastante sencilla usando la función mail(), es bastante sencillo y nos da la posibilidad de enviar correo en formato HTML definiendo la cabecera previamente. Con esta función con solo los 3 parametros (destino,asunto,mensaje) ya podemos enviar correos solo que saldrá como remitente [email protected]; El formato de la función mail() es la siguiente:

<?php mail ($destino, $asunto, $mensaje, $cabeceras); ?>

Un ejemplo de como usar la función mail, sería:

<?php
$destino = "destino @ dominio.com";
$asunto ='=?UTF-8?B?'.base64_encode("Hola Mundo!").'?=';
$cabeceras ="From: Contacto Mi Dominio <contacto @ midominio.cl> \r\n". 
          "Reply-To: contacto @ midominio.cl \r\n". 
          "MIME-Version: 1.0\r\n".
          "Content-Type: text/plain; charset=UTF-8";

$mensaje = "Saludos desde Marte \r\n a todo el mundo";

mail($destino, $asunto, $mensaje, $cabeceras);
?>

 

Destino:

Es el correo de destino o a quien se le enviará el mensaje, este campo es obligatorio.  Y se pueden poner de las siguientes formas

Asunto:
El asunto del correo. Lo ideal es siempre tener un asunto en cada mensaje a enviar pero este campo no es obligatorio y el correo puede ser enviado sin asunto.  Cuando el asunto es muy extenso este terminará con  “…” .

Cabeceras:

  • FROM Información del correo electrónico emisor.
  • REPLY-TO Es la dirección hacía donde respondera el receptor cuando éste haga click en responder mensaje.
  • MIME (Multipurpose Internet Mail Extensions, Extensiones de Correo Internet Multipropósito), son una serie de convenciones o especificaciones dirigidas a que se puedan intercambiar a través de Internet todo tipo de archivos (texto, audio, vídeo, etc.) de forma transparente para el usuario. Una parte importante del MIME está dedicada a mejorar las posibilidades de transferencia de texto en distintos idiomas y alfabetos. (Wikipedia)
  • CONTENT-TYPE Se utiliza para poder enviar correo con código HTML.

Cuerpo del Mensaje o Contenido
En el contenido del correo.  Este mensaje puede ser texto plano o ser código html o ambos.  Este tipo lo definimos en la cabecera para su visualización por parte del receptor.  Si el mensaje es solo texto plano hay que utilizar los siguientes tag, ya que se verá todo en una sola línea.

  • \n = salto de línea
  • \t = sangría
  • \r = retorno de carro

Un ejemplo de un correo con código HTML.

<?php
$destino  = 'nombre @ correo.cl , nombre @ correo.cl'; 
// ó puede ser también
$destino = 'nombre @ correo.cl' . ',' . 'nombre2 @ correo.cl';
// Asunto
$asunto = 'Hola Mundo!';
 
// Mensaje
$mensaje = '
<html>
<head>
  <title>Hola Mundo!</title>
</head>
<body>
  <p>Saludos desde Marte</p>
  <p>a todo el mundo!!</p>
</body>
</html>
';
 
// Cabecera que especifica que es un HMTL
$cabeceras  = 'MIME-Version: 1.0' . "\r\n";
$cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
 
// Cabeceras adicionales
$cabeceras .= 'From: Emisor <emisor @ correo.cl>' . "\r\n";
$cabeceras .= "Reply-To: contacto @ correo.cl \r\n";

// enviando correo! 
mail($destino, $asunto, $mensaje, $cabeceras);
?>

 

Es así de sencillo como podemos enviar correos a través de PHP con la función mail(), en algunos hosting esta configurado para no abusar del envío de correo.

 

Saludos!! 😀

 

VSO.