Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/03/2012, 06:52
eldavid13
 
Fecha de Ingreso: marzo-2012
Mensajes: 28
Antigüedad: 12 años, 1 mes
Puntos: 0
Duda sobre formulario php

Buenos días, he encontrado un tuto de un formulario php sencillo y efectivo pero al que querría modificar algo que no consigo.
formulario.hmtl:
Código HTML:
<!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" xml:lang="es-es" lang="es-es">

 <head>

  <title>Ejemplo de envío de formulario por email con php</title>

  <meta name="description" content="Formulario de contacto enviado por correo electronico usando php"/>

  </head>

<body>

 <div id="formulario">

  <form action="enviar.php" method="POST">

    Nombre: <input name="nombre" size="40" type="text" />

    Email: <input name="email" size="40" type="text" />

    Asunto: <input name="asunto" size="40" type="text" />
  
    Para: <select name="para">

    <option value="[email protected]">Dpto. de publicidad</option>

    <option value="[email protected]">Dpto. de administracion</option>
    </select>

    Mensaje: <textarea cols="40" rows="6" name="mensaje"></textarea>

    <input name="enviar" type="submit" value="Enviar" />
  </form>
 </div>
</body>
</html> 
Y en enviar.php

Código PHP:
<?php

  
//variable de validacion

  
$valida true;

  if (empty(
$_POST['nombre'])) {

    echo 
"<b>No se especifico nombre</b><br/>";

    
$valida false;

  }

  if (empty(
$_POST['email'])) {

   echo 
"<b>No se especifico E - mail</b><br/>";

   
$valida false;

  }

  if (empty(
$_POST['asunto'])) {

   echo 
"<b>No se especifico asunto</b><br/>";

   
$valida false;

  }

  if (empty(
$_POST['mensaje'])) {

   echo 
"<b>Por favor, no envie un mensaje en blanco</b><br/>";

   
$valida false;

  }

  
// Validamos la direccion de correo electronico

  
if (!strchr($_POST['email'],"@") || !strchr($_POST['email'],"."))
   {

    echo 
"<b>No es un correo valido</b><br/>";

    
$valida false;

   }

  
// Si las comprobaciones son correctas

  
if ($valida == true)

   {

    
// Creamos el header para el mensaje

    // para:

    
$to $_POST['para'];

    
// Asunto

    
$subject $_POST['asunto'];

    
// Cabeceras del mail (Content-Type y demas info)

    
$headers "MIME-Version: 1.0\n";

    
$headers .= "Content-type: text/html; charset=utf-8\n";

    
// El From: en la forma Nombre <[email protected]>, esto garantiza que

    // el receptor vea solo el nombre de quien envia

    
$headers .= "From: ".$_POST['nombre']." <".$_POST['email'].">\n";

    
// Opcional: Resopnder a:

    
$headers .= "Reply-To: " $_POST['email']."\n";

    
//Opcional X-Mailer

    
$headers .= "X-Mailer: PHP/" phpversion();

    
// Cuerpo del email

    
$message $_POST['mensaje'];

    if(
mail($to$subject$message,$headers))
     {

      echo 
"<p>Mensaje enviado, Gracias por sus sugerencias.<br /><a href=\"javascript:history.go(-1)\">Volver</a></p>";

     }

   }

?>
La cuestión es que al dar enviar, si dejas algun campo en blanco salta enviar.php y me gustaría que esos mensajes se cargaran en el campo en el que falta info en formulario.hmtl
Alguien sabe como se podría hacer?
Muchas gracias
saludos