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> Fuente: http://www.bloogie.es/tecnologia/programacion/38-como-enviar-un-formulario-por-email-con-php#ixzz1ozqKZeYI Under Creative Commons License: Attribution Share Alike
Y 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>"; } } ?> Fuente: http://www.bloogie.es/tecnologia/programacion/38-como-enviar-un-formulario-por-email-con-php#ixzz1ozqYVkNO Under Creative Commons License: Attribution Share Alike
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