Este artículo habla de como enviar un formulario a una dirección de e-mail. Esto es de lo más sencillo que se puede hacer con PHP, aunque bastante recurrente y a los principiantes les puede servir para ir entendiendo como funcionan los lenguajes de servidor.
El formulario es un formulario básico y se le pueden añadir los campos que se desee, ya que la aplicación recogerá todas las variables pasadas por el método «post» y las enviará por el mail, por lo que el método (method) del formulario debe ser «post» y el «action» debe ir a la página PHP que contenga la función.
la función recibe los campos «para», «asunto» y «texto», y los envía con el mail, pasando los campos «para» y «asunto» tal cual y añadiendo al campo «texto» los datos del formulario. También recibe un campo «de» que recibe el mail de quién se quiera que aparezca como emisor del mail.
<!–)–>
<html>
<head>
<title>Rellene el formulario</title>
</head>
<body>
<form name=’formulario’ id=’formulario’ method=’post’ action=’pagina_mail.php’ target=’_self’>
<p>Nombre <input type=’text’ name=’Nombre’ id=’Nombre’></p>
<p>Apellidos <input type=’text’ name=’Apellidos’ id=’Apellidos’></p>
<p>E-mail <input type=’text’ name=’E-mail’ id=’E-mail’></p>
<p><input type=’radio’ value=’Hombre’ name=’Sexo’ id=’Sexo’>Hombre</p>
<p><input type=’radio’ value=’Mujer’ name=’Sexo’ id=’Sexo’>Mujer</p>
<p align=’center’>
<input type=’submit’ value=’Enviar formulario’>
<input type=’reset’ value=’resetear formulario’>
</p>
</form>
</body>
</html>
<?php
//Copyright © McAnam.com
function form_mail($sPara, $sAsunto, $sTexto, $sDe){
if ($sDe)$sDe = «From:».$sDe;
foreach ($_POST as $nombre => $valor)
$sTexto = $sTexto.»n».$nombre.» = «.$valor;
return(mail($sPara, $sAsunto, $sTexto, $sDe));
}
//Ejemplo de como usar:
if (form_mail(«usuario@suweb.com»,
«Activación de formulario»,
«Los datos introducidos en el formulario son:nn»,
«tu@tuweb.com»
)
)
echo «Su formulario ha sido enviado con exito»;
?>