Función mail de PHP

Si necesitas enviar los datos recogidos a través de un formulario HTML por correo electrónico, te puede resultar útil la función mail de php.

Creamos un documento php (email.php) el cual se encargará de realizar el envío. Definimos las diferentes variables encargadas de recoger los datos del formulario, por ejemplo $variable = $_POST[nombre-campo].

Supongamos que hemos creado un formulario de contacto, compuesto por los siguiente campos: nombre, apellidos, telefono, email, asunto y mensaje; creamos las variables:

  • $nombre = $_POST[nombre];
  • $apellidos = $_POST[apellidos];
  • $telefono = $_POST[telefono];
  • $email = $_POST[email];
  • $asunto = $_POST[asunto];
  • $mensaje = nl2br($_POST[mensaje]); Con esta variable mantenemos los párrafos tal y como los escribió el usuario, respetando los saltos de línea.

Construimos el cuerpo del mensaje en texto plano o HTML:

  • $message

Y por último definimos el destinatario, asunto y remitente.

  • $email
  • $asunto
  • $cabeceras

A continuación, podéis ver un ejemplo de como quedaría nuestra función mail:

<?php

$nombre = $_POST[nombre];
$apellidos = $_POST[apellidos];
$telefono = $_POST[telefono];
$email = $_POST[email];
$asunto = $_POST[asunto];
$mensaje = nl2br($_POST[mensaje]);
$message =

"<font face=Arial, Helvetica, sans-serif size=2 em>

<p>Hola Administrador,</p>

<p>Un usuario ha enviado un nuevo mensaje, con los siguientes detalles:</p>

<p><b>Nombre completo:</b> $nombre $apellidos<br />
<b>Datos de contacto:</b> $telefono / <a href=mailto:$email>$email</a></p>

<p>$mensaje</p>

</font>";

$email = 'destinatario@email.es';
$asunto = $_POST[asunto];
$cabeceras = "From: remitente@email.es\r\nContent-type: text/html\r\n";

mail($email,$asunto,$message,$cabeceras);

?>

No olvides definir en tu formulario HTML "method" y "action".

<form id="formulario-contacto" name="formulario-contacto" method="post" action="email.php">

No hay comentarios:

Publicar un comentario

Entradas populares

Sobre el autor

Mi foto

Me llamo Juan Ignacio Estévez. Soy técnico publicitario por el Centro Español de Nuevas Profesiones (CENP).

Comencé desarrollando mi carrera profesional en estudios de diseño y agencias de publicidad como director de arte, siempre enfocado al mundo Offline. Sin embargo, pronto sentí curiosidad por el Online. Desde entonces, he intentado formarme en este sector, a través de diferentes cursos de formación y de forma autodidacta.

Puedes ver mi perfil completo en LinkedIn. ¿Hacemos Networking?