La comunicación con los usuarios es muy importante por lo que debemos ofrecer un formulario de contacto en todo sitio web. En el ejemplo que veremos a continuación realizaremos un formulario de contacto en HTML que enviara las respuestas a un correo electrónico mediante funciones de PHP y tendrá un diseño agradable y adaptable a dispositivos con la integración de atributos de CSS3. Ver ejemplo: Formulario de contacto HTML5/CSS3/PHP
Estructura de Formulario de contacto
En el documento de HTML se definirá la estructura y los campos que dispondrá el formulario de contacto. Debemos abrir el «editor de código» o el bloc de notas por defecto y guardar el documento como formulario.html. Adicionalmente agregamos las siguientes lineas en el documento HTML.
<html lang="es"> <head> <title>Formulario de contacto HTML5/CSS3/PHP</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="form-estilos.css"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro" rel="stylesheet"> </head> <body> <aside> <H1>Formulario de contacto HTML5/CSS3/PHP</H1> <a href="https://www.internetedadinero.com">¿Como se hace?</a> | <a href="https://www.internetedadinero.com">Descargar Archivos</a> <hr> <FORM ACTION="enviar_email.php" METHOD="post"> <label for="first_name">Nombre</label> <INPUT type="text" size=36 name="first_name"></INPUT> <label for="last_name">Apellido</label> <INPUT type="text" size=36 name="last_name"></INPUT> <label for="email">E-mail</label> <INPUT type="email" size=36 name="email"></INPUT> <label for="telephone">Teléfono</label> <INPUT type="tel" size=36 name="telephone"></INPUT> <label for="message">Mensaje</label> <TEXTAREA rows=5 cols=30 name="message"></TEXTAREA> <br> <INPUT type="reset" value="Borrar"> <INPUT type="submit" value="Enviar"><a href="https://www.internetedadinero.com/tutorial-formulario/email_form.php"></a> </FORM> </aside> </body> <footer> <a href="https://www.internetedadinero.com">Formulario de contacto HTML5/CSS3 - www.internetedadinero.com</a> </footer> </html> |
Atributos del Formulario de contacto
Una vez agregada la estructura de formulario de contacto, debemos añadir atributos para mejorar la visualización y permitir que se adapte a la pantalla de cualquier dispositivo móvil. Para añadir atributos debemos crear un documento de CSS, lo nombraremos form-estilos.css y añadimos las siguientes lineas antes de guardarlo.
h1 { font-size: 22px; font-family: 'Source Sans Pro', sans-serif; text-decoration: underline; margin: 0px 0px; } p { font-family: 'Source Sans Pro', sans-serif; font-size: 16px; margin-bottom: 0px; } a { color: #333; text-decoration: none; font-family: 'Source Sans Pro', sans-serif; } label { font-family: 'Source Sans Pro', sans-serif; font-size: 16px; margin-bottom: 0px; font-weight: bold; } input[type=text], input[type=tel], input[type=email] { width: 100%; padding: 12px 20px; margin: 8px 0; box-sizing: border-box; border: 2px solid #ccc; border-radius: 4px; } textarea { width: 100%; height: 150px; padding: 12px 20px; box-sizing: border-box; border: 2px solid #ccc; border-radius: 4px; background-color: #f8f8f8; resize: none; } input[type=button], input[type=submit], input[type=reset] { background-color: #4CAF50; border: none; color: white; padding: 16px 32px; text-decoration: none; margin: 4px 2px; cursor: pointer; margin-top: 10px; } input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover { background-color: #333; } footer { position: fixed; width: 100%; right: 0; bottom: 0; left: 0; padding: 10px 0px 10px 0px; background-color: #333; text-align: center; } footer a { color: #fff; } |
Archivo de Envio del Formulario de contacto
Tenemos los documentos vinculados y si revisamos el archivo formulario.html en el navegador podremos ver que ya tiene el aspecto indicado, ya es adaptable y permite que rellenemos los campos, sin embargo hasta el momento los datos no van a ningún sitio. Debemos agregar el documento de PHP que tendrá las especificaciones de envio de correo y que llevara a cabo la función de recolección y envio de datos a un correo electrónico especifico. Abrimos un nuevo documento y se nombrara enviar_email.php, adicionalmente agregamos las siguientes lineas.
<?php if(isset($_POST['email'])) { // Edita las líneas siguientes con tu dirección de correo y asunto $email_to = "tucorreo@tucorreo.com"; $email_subject = "Tu Asunto de correo"; function died($error) { // si hay algún error, el formulario puede desplegar su mensaje de aviso echo "Lo sentimos, hay un error en sus datos y el formulario no puede ser enviado. "; echo "Detalle de los errores.<br /><br />"; echo $error."<br /><br />"; echo "Porfavor corrije los errores e inténtelo de nuevo.<br /><br />"; die(); } // Se valida que los campos del formulairo estén llenos if(!isset($_POST['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['message'])) { died('Lo sentimos pero parece haber un problema con los datos enviados.'); } //Valor "name" nos sirve para crear las variables que recolectaran la información de cada campo $first_name = $_POST['first_name']; // requerido $last_name = $_POST['last_name']; // requerido $email_from = $_POST['email']; // requerido $telephone = $_POST['telephone']; // no requerido $message = $_POST['message']; // requerido $error_message = "Error"; //Verificar que la dirección de correo sea válida $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; if(!preg_match($email_exp,$email_from)) { $error_message .= 'La dirección de correo proporcionada no es válida.<br />'; } //Validadacion de cadenas de texto $string_exp = "/^[A-Za-z .'-]+$/"; if(!preg_match($string_exp,$first_name)) { $error_message .= 'El formato del nombre no es válido<br />'; } if(!preg_match($string_exp,$last_name)) { $error_message .= 'el formato del apellido no es válido.<br />'; } if(strlen($message) < 2) { $error_message .= 'El formato del texto no es válido.<br />'; } if(strlen($error_message) < 0) { died($error_message); } //Plantilla de mensaje $email_message = "Contenido del Mensaje.\n\n"; function clean_string($string) { $bad = array("content-type","bcc:","to:","cc:","href"); return str_replace($bad,"",$string); } $email_message .= "Nombre: ".clean_string($first_name)."\n"; $email_message .= "Apellido: ".clean_string($last_name)."\n"; $email_message .= "Email: ".clean_string($email_from)."\n"; $email_message .= "Teléfono: ".clean_string($telephone)."\n"; $email_message .= "Mensaje: ".clean_string($message)."\n"; //Encabezados $headers = 'From: '.$email_from."\r\n". 'Reply-To: '.$email_from."\r\n" . 'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); ?> <!-- Mensaje de Éxito--> Muchas Gracias! Proximamente Estaremos en Contacto. <?php } ?> |
Redireccionar a otra pagina web
Reemplaza el mensaje de exito por las siguientes lineas para redicreecionar a otra pagina web una vez el formulario sea enviado.
<script> window.location.href='https://www.internetedadinero.com'; </script> |
Conclusiones
Al agregar el documento PHP el formulario quedara funcional, los datos agregados irán al correo electrónico que especifiquemos una vez el usuario oprima el botón de «enviar». Puedes revisar el formulario y hacer pruebas de envio para verificar que todo este funcionando correctamente. Si deseas puedes descargar los archivos y ver el ejemplo en los enlaces a continuación.
Ver ejemplo: Formulario de contacto HTML5/CSS3/PHP
Descargar archivos: Formulario de contacto HTML5/CSS3/PHP
No olvides comentar si tienes alguna duda y si te ha gustado el articulo compártelo ¡Muchas Gracias!
Michel, disculpa mi molestia despues de tanto tiempo publicado este articulo… quisiera saber como puedo hacer para que me tome en el php de validación los datos proporcionados en un select.
Opción 1
Opción 2
Opción 3
en la configuración de php tengo este segmento
//Valor «name» nos sirve para crear las variables que recolectaran la información de cada campo
$opciones= $_POST[‘opciones’]; // requerido
$error_message = «Error»;
mi consulta es cual sería la forma de que en la configuración me tome la opción seleccionada del «select» para que se muestre en el e-mail.
Hola Michel, Soy Cruz David de Venezuela. te escribo por lo siguiente: estoy creando una pagina y estoy utilizando tu modelo del formulario pero cuando le doy enviar me abre es una pagina con el código del archivo PHP y no se envían los mensajes. no tengo mucho conocimiento de PHP y se me esta complicando un poco. me podrías ayudar?
Iván, olvidaba algo los primeros mail, no llegaron fueron 2 era porque estaban como span, habilite la procedencia y listo
Gracias, acá Iván desde Chile me resulto, jajaja unos intentos al 4º listo.
Gracias. lo hice en la misma estructura del sitio web (index.html), despues solo subi el archivo php, lo modifique desde el hosting y resultó más fácil. no necesite el formulario.html, así como sus atributos css, ya que todo estaba en el index, cuando llegue a copie todo el form y lo pegue despues solo subi enviar_form.php y modifique mail.
gracias. muchas gracias
Michel! Gracias por compartirnos.
Consulto… Tengo el inconveniente que, ningún PHP me envía el contenido del formulario de contactos, haciendo todo lo que los tutoriales dicen. Me dijo un amigo programador que es por no usar el Apache pero estoy usando Visual Studio. No necesita Apache como Eclipse. Me equivoco? Sino, cómo resolverlo? Estoy hace un par de meses largos con esto y no encuentro solución.
Lo otro, que también sucede, es que, al «enviar» el contenido del formulario, directamente me redirecciona del index.html al archivo *.php (obviamente que, la ventana está vacía). Y eso me molesta ya que estoy usando un Ajax para no actualizar la página.
Se que soy un desastre pero bueno… Le pongo muchas ganas.
Nuevamente muchísimas gracias!
Hola David, según entiendo el problema es el servidor, por ser un archivo php necesita el servidor apache para funcionar, o alguno similar a este. Con respecto a la redireccion, al final del articulo se encuentran unas lineas de codigo que puedes reemplazar para redirigir una vez se ha completado el formulario. Espero haber aclarado un poco, de todos modos coméntame si el inconveniente persiste y vemos que otra solución puede funcionar. Un saludo
Buenas use el script lo ajuste , al sitio me sale exitoso . peo nunca llega un email al correo que esta adentro del mismo dominio.
el hoster es godaddy.com hay alguna forma de arreglar para el script funcione con godaddy.com ? usa cpanel asumo que es linux.
Hola Michel. Gracias por el aporte, me fue muy util el post.
Tengo una única pregunta, al hacerle una sencilla modificación al php ( sacar la sección mensajes) me funciona todo perfectamente. El único inconveniente es que los campos dejaron de ser obligatorios, es decir, puedo enviar el formulario sin ningún campo lleno. Revise todo y no encuentro la falla de porque no me estaría funcionando el código para que sean obligatorios.
Hola Juan: Tuve el mismo inconveniente, presionaba en enviar, y los mensajes se enviaban sin necesidad de llenar las casillas… Luego de investigar y averiguar sobre el alcance de los comandos relacionados, cambié el comando isset, por empty… Ahora funciona la comprobación y el envío correctamente para mí formulario, te dejo la modificación que he realizado al código:
/ Se valida que los campos del formulairo estén llenos
if(empty($_POST[‘first_name’]) ||
empty($_POST[‘last_name’]) ||
empty($_POST[‘email’]) ||
empty($_POST[‘telephone’]) ||
empty($_POST[‘message’])) {
died(‘Lo sentimos pero parece haber un problema con los datos enviados.’);
}
PD: Aprovecho de agradecer a Michel, soy un completo novato en este ámbito y gracias a personas como él, he logrado crear un sitio web, incorporando una amplia variedad de nuevos conocimientos…
Saludos
Hola, me alegra muchísimo haber podido ayudarte en el aprendizaje para crear tu sitio web, es muy grato saber que puedo compartir mis conocimientos y que ello ayuda a que otros puedan desarrollarse profesionalmente. también quiero darte las gracias por tu aporte, parece que funciona perfectamente. Un gran saludo
Hola Michel!, ante todo gracias por el post. resulta de gran utilidad.
Encuentro que pulsando enviar sin completar ningun campo, el formulario se envia igual, lo que significa que no esta validando el formulario con los campos obligatorios. Gracias!
Excelenteee
funcionando a la perfección
graciaaas!!
Michel lamentablemente hice todo lo que decis, probe localmente con xampp , lo subi a hosting y no me funciona, alguna otra modificacion para que funcione?
magnifico código michel, felicidades, supersencillo. Un apunte: el comando ‘Reply-To: ‘.$email_from.»\r\n» . no funciona.
Supongo que es una copia del mensaje al usuario que escribe el formulario. Pues no llega nada. He leido en el foro de microsoft que está obsoleta, ¿es cierto?
https://docs.microsoft.com/es-es/dotnet/api/system.net.mail.mailmessage.replyto?view=netframework-4.7.2
buenas de nuevo, dándole vueltas, tras descansar e investigando he dado con la solución:
Sustituir
‘Reply-To: ‘.$email_from.»\r\n» .
por
‘CC: ‘.$email.»\r\n».
perdón, rectifico:
Sustituir
‘Reply-To: ‘.$email_from.”\r\n” .
por
‘CC: ‘.$email_from.”\r\n”.
Hola Michel, gracias por tu aporte.
Soy lego en PHP, pero necesito implementar un formulario de contacto. He seguido tu artículo y he bajado los archivos pero no llega ningún correo. He notado, no sé si estoy equivocado, que en el formulario.html no hay referencia al documento PHP.
Podrías aclararme este punto.
Gracias
Hola Juan, el llamado en el html se hace con la etiqueta
<FORM ACTION="enviar_email.php" METHOD="post">
Un saludo
Hola Michel, he intentado usar tu ejemplo, pero no hace nada. Perdona mi ignorancia, pero en el código formulario.html no encuentro el llamado al código PHP. Disculpa, podrías aclararmelo,
Gracias,
Juan Carlos
Hola Juan, el llamado en el html se hace con la etiqueta
<FORM ACTION="enviar_email.php" METHOD="post">
Un saludo
Hola!, al parecer no comprueba errores, si lo dejo vacío envía igualmente y da mensaje de exito, alguna idea de que puede ser?
Saludos y gracias!
Hola, intenta enviarlo nuevamente desde tu servidor, algunas veces por el cache mi servidor supongo que lo envia asi, pruebalo desde tu servidor, seguramente comprobara errores. Un saludo
Hola Michel!
Antes que nada, gracias por el tutorial y los materiales.
Yo lo probé en mi servidor y efectivamente NO valida los campos del formulario. Simplemente lo envía aunque los campos estén vacíos.
Alguna sugerencia?
Hola Michel por mas que he intentado no me funciona el formulario, lo he probado localmente en wampserver, tengo una duda el contenido de enviar-email.php se copia dentro del body de una pagina nueva no???
Saludosssss
Hola, se necesitan 3 documentos, uno es el HTML, otro el CSS y por ultimo el PHP. El documento PHP lo nombramos enviar_email.php, sirve ara verificar y hacer el envio del email. Quedo atento por si tienes alguna otra duda, un saludo
Descargué todo, generé una nueva carpeta en mi carpeta raíz para ver si funcionaba así como está (le cambié unicamente el correo electronico) y no me funciona.
No solamente el tuyo, sino muchos que luego del tuyo he estado probando..
estoy usando el editor brackets, tendra algo que ver con este impedimento? ya que entiendo el codigo y lo que pongo esta bien… hay algo que no me termina de leer…
Hola, los archivos deben ser probados en un servidor local para que funcione el archivo PHP. Debes usar Xammp o el servidor local de tu preferencia para hacer la prueba. No estoy seguro si estas utilizándolo, si miras los archivos sin servidor, no funcionara el documento PHP. Si el problema persiste coméntame y miramos que solución podemos aportar. Muchas gracias por tu comentario, un saludo
Si lo pruebo en local funciona igual o debo probarlo necesariamente en el servidor.
Hola, funciona si lo pruebas en un servidor local como Xampp, un saludo
hola amigo buen aporte me sirvio mucho pero quisiera que me ayudes, como puede generar ese formulario en una imagen, me explico mejor quiero que al darle click en una imagen o boton me aparezca como un pop up o ventana emergente
Hola, para agregar una ventana emergente de una manera muy sencilla es necesario usar Javascript, debes mantener los archivos que creamos y crear otro archivo HTML en el que aparecerá el enlace a la ventana emergente. En el nuevo archivo agregas las lineas que muestro a continuación.
El enlace a la ventana emergente contiene la URL del documento html del formulario, de esa manera podrá mostrase en una ventana emergente todo el formulario. Ya seria necesario arreglar un poco el CSS para visualizarlo mejor. Espero que te sirva, quedo atento por si tienes alguna otra pregunta o inconveniente. Un saludo
muy buen tutorial me salio enseguida. estaria bueno algo con captcha de google por que sino ya me ha pasado que me llegan a mi cuenta mucho spam. Muy buen aporte!
Habrá un redirect mismo para que quede en esa página y no tener que ir a otra?
Hola, muchas gracias por tu comentario. Es cierto que es recomendable agregar un captcha, esto ayudara a reducir el spam. AL final del articulo explico como puedes agregar una redireccion en el espacio conde se encuentra el mensaje de agradecimiento. Pronto actualizare con un código nuevo para formularios que incluya el captcha. Un saludo
hola que tal estoy intentado usar las instrucciones pero la verdad no se donde debo cambiar la dirección de correo porque no llega cuando la uso agradecería mucho su ayuda
Hola, en el código debes agregar la dirección de correo electrónico a la que desees que llegue el correo, esta ademas sera la dirección de remitente, intenta poner en el formulario una dirección de correo diferente a la que has agregado en el código, de esa forma posiblemente se arregle tu inconveniente. Espero haberte ayudado, si no coméntame y buscamos otra solución. un saludo
estimado muy buenas tardes, que hago mal que al presionar enviar no me hace nada.. solo me abre la ventana de php?
Hola, Muy posiblemente este creando conflicto por usar el correo de remitente, como nos decia Francisco anteriormente, revisa agregando en el formulario un correo diferente al que tienes como remitente en codigo, espero funcione. Un saludo
Hola, hay una situación un poco extraña y tal vez por eso es que cuando estamos haciendo pruebas con el formulario este no envia la información; si en el campo email del html escribes el mismo correo al que debe enviar el php este no funciona, en las pruebas utilicen otra dirección de correo (esto me paso con un correo de hotmail).
Hola, es cierto lo que comentas, en este código el remitente sera tu correo electrónico, un saludo, gracias por el aporte.
Hola.
sabes que arroja el mensaje de enviado pero no me llega al correo y no se porque si puedes ayudarme seria de gran ayuda.
de antemano muchas gracias.
Hola, es posible que haya llegado a la carpeta de Spam o correo no deseado, hecha un vistazo a la carpeta, si continua sucediendo coméntame y revisamos que otro error puede ser, gracias por tu interés, un saludo
Me sirbio de mucho ya poco a poco se como debo hacerlo el caso es que cuando abro mi administrador de archivos de la web solo me aparece una carpeta llamada htdocs la cual es la que almacena todo pero cada cosas tiene su directorio no se si colocar los archivos dentro de esa carpeta o de las otras carpetas que estan adentro el hosting que utilizo se llama infinityfree.net deme una respueta de donde debo colocar o meter los archivos por favor ya que la carpeta root no aparece todo es muy diferente muchas gracias por toda la ayuda que me a dado.
Hola buenas noches disculpe me gusto mucho el formulario y todo pero no tengo mucho conocimiento lo unico que no se es donde poner el php lo demas si lo se hacer peor no se como poner el php que etiqueta lleva o donde lo debo colocar espero una respuesta muchas gracias.
Hola, para agregar el archivo php debes crear un nuevo documento y nombrarlo enviar_email.php en el agregas las lineas de codigo PHP descritas en el articulo, este documento ya se encuentra añadido en el código del archivo HTML. Espero haber resuelto tu duda, si tienes otro inconveniente no dudes en consultarme. gracias por tu interés, Saludos
Hola Muy buena la respuesta que me dio anterior mente mas o menos ya me imagino como es pero el caso es que tengo hosting con constructora web entro al panel de control y me sale la opción de phpmyadmin y base de datos MySQL creo que debo colocar el archivo php en un nuevo documento en esa sección o como ? disculpe por preguntar mucho
.
Hola muchas gracias por la respuesta mas o menos me imagino como es el sistema el caso es que tengo hosting con constructora de web y entro al panel de control y me sale la opción de phpmyAdmin y Base de datos MySQL si coloco el archivo php en un documento dentro de la Sección php ase la mis función o no se puede validar o activar. disculpe por preguntar mucho y gracias de ante mano.
Hola, los archivos no los debes colocar en PHPmyadmin sino en el «Administrador de archivos» en la carpeta «root», se denomina (public_html), en ella deberías subir los documentos (Html, Css y Php), si tienes algun archivo index.html o index.php se mostrara apenas hagas el ingreso al dominio, al nombrarlo index puedo convertirlo en una pagina de inicio. Ten cuidado por que seguramente en esta carpeta estan los archivos del sitio web que creaste con la constructora, no borres ningun documento para no dañar tu sitio web, si deseas puedes crear una nueva carpeta en el public_html y subirlos dentro de ella para no confundirte. Espero haberte apoyado, si no coméntame que proveedor de hosting tienes y revisamos donde se encuentra la administración de archivos en ese proveedor. Un saludo
Muy buen tuto.
Una consulta, quiero agregar un drop down (opciones en el html) sin usar base de datos.
Mi problema es que no sé cómo asignar el valor de la opción escogida a una variable.
Hola, La etiqueta
sirve para crear listas desplegables html y la etiqueta
para cada elemento de las listas desplegables HTML. Este es un ejemplo sencillo de un drop down:
Espero haber aclarado tu duda, si tienes algún otro inconveniente coméntame y vemos como resolverlo. Muchas gracias por tu interés, un saludo
Hola, muy bueno, solamente que no me valida los campo. Hago clic en el botón enviar y me envia aun con los campos vacios.
Hola, el código trae la validación de campos, hay algunos que son requeridos y otros no. Un saludo, muchas gracias por tu interés.
Hola que tal y gracias por el tutorial, queria consultarte si hay alguna forma de hacer que este todo en un solo archivo y que este al enviar el mensaje active una funcion js que muestre un modal diciendo que el mensaje fue enviado con exito.
Hola, en el codigo se encuentra activado el mensaje de éxito, lo que se puede hacer es crear una clase CSS para ese mensaje y modificarlo en la hoja de estilos CSS adjunta, de esa manera puedes mejorar la visualización de el mensaje de éxito. Espero haber ayudado, disculpa la demora. Un saludo
hola, una consulota si llega el correo, pero no valida el formulario, al hacer las pruebas no valida nada solo lo envia tal cual esta, esto puede producir spam, me puede decir porque no valida el formulario?
Hola, El formulario valida que los campos están completos, sin embargo no tiene añadido un Captcha, eso es lo que validaría que no es spam y puede dejar de enviarlo a la carpeta spam. Ese es un tutorial que les estoy debiendo, el de agregarle el captcha a este formulario de contacto, lo mas pronto que pueda lo hago, discúlpame. Gracias por tu interés, saludos
Hola ,
Gracias por el post!
Quería preguntar si es posible cambiar el modo de envío.
Cuando el correo llega a la bandeja de entrada, lo hace como si lo enviara la persona que rellena los campos. Esto hace que el mail llegue siempre a la bandeja de SPAM, si se enviara desde el email de la web (desde nuestro propio dominio) sería lo mejor.
Podríamos cambiarlo?
Muuuchas gracias!
Hola, si es posible, debes definir la expresión:
$email_from = ‘Tu email aca.’;
Esta expresión debe estar por encima de cualquier referencia a la variable $email_from. la variable $email_from no debe ser mencionada en ningún momento para que pueda tener la definición que se le ha dado, con solo agregar la linea al código PHP, ya debería enviarla desde el correo que añadas.
Hola!
Gracias! creo que si que ha funcionado!
Lo que no se ve mi email en el encabezado (el de mi dominio) sino es como si la persona enviara desde su email y en el encabezado aparece su nombreusuario@caplesk.ncloud.es
Lo que siguen llegando los mails a la carpeta SPAM. Pensé que con esto se solucionaria.
Hola, la solución puede estar en agregarle un Captcha al formulario, que valide que no es spam, eso seguramente ayudara, como dije anteriormente, es un tutorial que estoy debiendo y haré lo mas pronto posible, no he tenido mucho tiempo este mes, agradezco tu interés, un saludo
Mil gracias!
Está super bien explicado y agredezco la ayuda!
Un saludo 🙂
Muchas gracias por tu comentario, es un honor poderte apoyar, un saludo
hola, lo he colgado en mi servidor, he puesto la direccion de correo mia y no me llega nada, si me valida los campos y me da la confirmacion del final pero que puede suceder?
Hola, es posible que hayas dejado un espacio entre las comillas de la dirección de correo, pues mi código tenia ese error pero acabo de modificarlo, me refiero a que se encontraba de la siguiente manera, $email_to = » tucorreo@tucorreo.com«; Pero deberías dejarlo como se encuentra en este momento, $email_to = «tucorreo@tucorreo.com»;
Espero que esta solución pueda resolver el problema, si el problema persiste avísame y buscamos otra manera. Te agradezco mucho por tu interés, un saludo
Hola Michel! Lo he puesto en mi servidor, lleno los campos y da la confirmación de que envía pero no me llega nada. (No tengo espacios entre las comillas).
En el archivo PHP no debería haber un sector donde especifique el emisor de correo? Es decir, la dirección de correo y contraseña desde donde enviará los correos.
Y si no es así, desde donde enviaría los correos?
Hola Enzo, cuando se llena el formulario pide un correo, este llega con los datos de esa persona, es decir el correo llega con la direccion de la persona que lleno el formulario. Yo recibo los correos que envian de ejemplo en https://internetedadinero.com/tutorial-formulariohtml/ de esta manera:
Contenido del Mensaje.
Nombre: prueba
Apellido: prueba
Email: email@email.com
Teléfono: 12345
Mensaje: prueba
Por ello no entiendo por que no te funciona, es posible que estes dejando algun dato en blanco, revisa tu carpeta de spam, tambien es posible que llegue ahi, de todos modos voy a revisar de nuevo el codigo a ver que puede estar faltando, si deseas tambien puedes descargar los archivos y cambiar por tus datos a ver si hay alguna inconsistencia. Disculpame no ayudarte mas por el momento, voy a revisar y si veo algún error que pueda tener te estare comentando a la brevedad. Gracias por tu interes, un saludo
Genial, muchas gracias!
Hola Michel.
Muchas gracias por el código. ¿Cómo hacerle para que, al enviar el correo, se incluyan los caracteres especiales? Tal como está no muestra acentos o eñes…
Muchas gracias
Hola Maria Luisa, para visualizar caracteres especiales debes agregar la etiqueta meta charset=»utf-8″, ella reconocerá tildes y caracteres del español, en este caso esta agregada, también la etiqueta html lang=»es» declara el idioma del documento. Si tienes alguna otra duda no olvides comentarla. Un saludo
Hola, sabes como re dirigir a una página en particular despues de haber llenado el formulario? gracias, saludos.
Hola, puedes hacer una redireccion muy simple una vez sea enviado el formulario, abajo en donde se encuentra el mensaje de exito, reemplazalo por las lineas que he agregado al final del articulo. Ello te llevara a la URL que agregues, espero haberte ayudado, un saludo
Buenos dias, sabes como se podria agragar la validacino del captra de REcaptcha
Hola Sergio, debes dirigirte a https://www.google.com/recaptcha/admin o el proveedor de servicio que prefieras. Debes registrar tu sitio web y te entregaran una clave del sitio y una clave secreta. Para agregarlos es necesario crear un archivo PHP que lo valide, pero es un poco extenso, por lo que prefiero dejarlo en un tutorial, puedes ver mas información acerca de su uso en https://developers.google.com/recaptcha/docs/display. Muchas gracias por tu interés, un saludo
Estamos esperando ese tutorial como agua de mayo.
Gracias
Hola Michel gracias por el post,
tendrás el enlace correcto de los archivos para descargarlos y ver el ejemplo en el archivo real?
Gracias.
Hola Vitto, muchas gracias por tu interés, los enlaces a archivos y el ejemplo se encuentran al final del articulo, en las conclusiones. Un saludo
Así es Michel, si los encontré, lo que ocurre es que el enlace para descargar los archivos está errado.
Descargar archivos: Formulario de contacto HTML5/CSS3/PHP
Si lo puedes revisar sería genial.
Gracias.
Hola Vitto, discúlpame si estaba caído el enlace, ya lo he arreglado y se pueden descargar los archivos. Muchas gracias por tu interés, un saludo