• En espera

Formulario que envié datos a un correo en php

Código html del formulario

El código html podeis aprender a hacerlo aquí. En este tutorial vamos a usar un formulario que va a estar compuesto de un campo de texto llamado nombre, un campo de contraseña llamado contraseña, un área de texto llamado observación y un grupo de opciones llamado opciones. El código del formulario en definitiva sería el siguiente en el que recalco en azul el nombre de la página php a la que mandará el formulario y en rojo el nombre de los campos:

<form action="formulario.php" method="post" enctype="multipart/form-data" name="form1">
<table width="100%" border="0">
<tr>
<td><div align="right">Nombre</div></td>
<td><input name="nombre" type="text" id="nombre" maxlength="50"></td>
</tr>
<tr>
<td><div align="right">Contraseña</div></td>
<td><input name="contraseña" type="password" id="contraseña" value=""></td>
</tr>
<tr>
<td><div align="right">Observaciones</div></td>
<td><textarea name="observacion" id="observacion"></textarea></td>
</tr>
<tr>
<td><div align="right"><input type="radio" name="opciones" value="opción1" /></div></td><td>Opción1</td>
</tr>
<tr>
<td><div align="right">
<input type="radio" name="opciones" value="opción2" /></div></td><td>Opción2</td>
</tr>
<tr>
<td><div align="right">
<input name="Restablecer" type="reset" id="Restablecer" value="Restablecer">
</div></td>
<td><input name="Enviar" type="submit" id="Enviar" value="Enviar"></td>
</tr>
</table>
</form>

Código php del formulario

Ahora que tenemos listo nuestro formulario en una página html vamos a crear la página formulario.php, y a esta página le vamos a poner el código html que queramos, como si fuera una página html cualquiera. Yo os aconsejo poner el texto de "Su mensaje ha sido mandado correctamente" (que no se os olvide las etiquetas de html, body y head, jeje).

Una vez hayais hecho vuestra página php con el código html que querais vamos a añadir el código php para que mande el correo a nuestra direccion con la información del formulario. Este código lo podeis poner en cualquier parte del código html, por ejemplo al principio del body. Os enseño el código y después lo explico:

<?php
$sendTo = "tucorrreo@hotmail.com";
$subject = "primerformulario";
$nombre = $_POST["nombre"];
$contraseña = $_POST["contraseña"];
$observacion = $_POST["observacion"];
$opciones = $_POST["opciones"];
$headers .= "";
$message = "\nNombre: " . $nombre . "\nContraseña: " . $contraseña . "\nobservacion: " . $observacion . "\nOpcion elegida: " . $opciones;
mail($sendTo, $subject, $message, $headers);
?>

Vamos a ver este código parte por parte:

  1. Primero encontramos en azul el correo al que va a mandar el mensaje nuestro formulario. Ahí ponemos el nuestro (verificad la bandeja de correo no deseado cuando os llegue)
  2. Después encontramos en morado el asunto del mensaje, el nombre que traerá el mensaje que nos llegue.
  3. Luego encontramos cuatro líneas iguales que corresponden a cada campo del formulario. Si os fijais en rojo y en naranja encontramos los nombres de los campos del formulario. En caso de que hay más o menos campos sólo teneis que cambiar el número de líneas.
  4. Por último, en celeste y naranja encontramos un estructura que se repite con un punto entre cada una: "\nCeleste: " . $naranja . Lo que encontramos en naranja ahí es de nuevo el nombre del campo, y lo que encontramos en celeste es lo que nos llegará en el mensaje antes de lo que se puso en el campo. Por ejemplo, si en el campo nombre puse "Antonio" y en lo de celeste tengo puesto "Nombre:" pues me llegará en el mensaje "Nombre: Antonio".

Una vez creado el código php subes la página del formulario html y la página php y lo probamos (las páginas php se deben probar subidas al servidor). Si tienes alguna pregunta que hacernos o no te funciona tienes el foro a tu disposición.

Volver a cómo crear una web>>


Creada el 21/08/08 12:25
Copyright © - Todos los derechos reservados - Página creada por Juanma