Crear formulario de envío de email, muy bien explicado!

Hola!

Bueno, aquí os dejo un formulario muy simple, pero os lo explicaré todo, para que no os perdáis, el formulario lo que hará será enviaros los campos que pongáis al email que pongáis ;-)


Primero de todo, crear el formulario, lo llamaremos formulario.php (viva la originalidad!)

Y ahora creemos el formulario:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="es-ES"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>[COLOR="red"]Formulario[/COLOR]</title> 
</head>
<body>
[COLOR="red"]<form action="enviar.php" method="post">

<label>Nombre: <input name="[COLOR="blue"]nombre[/COLOR]" type="text" size="20" maxlength="10" /></label>

<label>Email: <input name="[COLOR="blue"]email[/COLOR]" type="text" size="20" maxlength="60" /></label>
					
<label>Teléfono: <input name="[COLOR="blue"]telefono[/COLOR]" type="text" size="11" maxlength="9" /></label>
					
<label>Comentario: <textarea name="[COLOR="blue"]comentario[/COLOR]" cols="35" rows="9"</textarea>
					
<button type="submit">Enviar</button></form>[/COLOR]
</body>
</html>

No me pararé a explicar los campos, ya que están explicados en CCTW: FORMULARIOS

Como veis al principio del formulario pone "<form action="enviar.php" method="post">
Quiere decir que hará lo que contenga el archivo enviar.php, así que lo creamos ahora:

enviar.php
<? 
  {
   	[B]//Esto es lo que recibiremos en el email[/B]
   	$cuerpo .= "Nombre: " . $HTTP_POST_VARS["[COLOR="blue"]nombre[/COLOR]"] . "\n"; 
   	$cuerpo .= "Email: " . $HTTP_POST_VARS["[COLOR="blue"]email[/COLOR]"] . "\n"; 
   	$cuerpo .= "Teléfono: " . $HTTP_POST_VARS["[COLOR="blue"]telefono[/COLOR]"] . "\n";
        $cuerpo .= "Comentario: " . $HTTP_POST_VARS["[COLOR="blue"]comentario[/COLOR]"] . "\n"; 
        

   	[B]//Aquí se envía el correo al email[/B]
   	mail("[COLOR="red"][B]TUEMAILAQUÍ[/B][/COLOR]","[B][COLOR="red"]ASUNTO QUE APARECERÁ EN EL EMAIL[/COLOR][/B]",$cuerpo); 

   	[B]//Aquí ponemos un mensaje de que llegó con éxito el formulario[/B]
   	echo "[COLOR="red"]Gracias por tu comentario, se ha enviado correctamente.[/COLOR]"; 
} 
?> 

Si os fijáis, al principio pusimos nombres a los campos, y en el enviar.php están esos mismos nombres, si al campo nombre por ejemplo le llamáramos "hola" en el enviar.php, quedaría así el primer código que aparece
 $cuerpo .="Nombre: " . $HTTP_POST_VARS["[COLOR="blue"]hola[/COLOR]"] . "\n";

Con eso deducimos que para añadir un nuevo campo al email, tenemos que añadir:
 $cuerpo .="Nombre: " . $HTTP_POST_VARS["[COLOR="red"]NOMBRE DEL CAMPO DEL FORMULARIO[/COLOR]"] . "\n";
Bueno para empezar la ariable $HTTP_POST_VARS quedo obsoleta desde php 4.1.0, ademas de que es mucho mejor usar la variable $_POST que es superglobal ha $HTTP_POST_VARS que no lo es, podrias mejorar mucho ese formulario, pero para empezar deberia funcionar correctamente como lo has realizado.
Es algo sencillo que funciona (lo he probado)
Si al final como lo sencillo no hay nada! jeje