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