Y por último, enlazamos los archivos con la etiqueta <#link> y su atributo href, para que se comuniquen entre ellos, y poder empezar a escribir nuestro código.
Estructura HTML.
Lo primero que debemos hacer es escribir nuestro código de cabecera HTML.
<#!DOCTYPE html>
<#html lang="en">
<#head>
<#meta charset="UTF-8">
<#title>Formulario Contacto
<#link rel="stylesheet" type="text/css" href="estilos.css">
<#/head>
Luego elegimos el tipo de letra con el que trabajaremos, para ello nos vamos a: https://fonts.google.com/
https://steemitimages.com/700x500/https://steemitimages.com/DQma8XCieTwFJFbYnxkQectfNpySwvX5fGgiMfr2DUUJqpL/Imagen_1.png
Seleccionamos nuestro tipo de letra preferido (En este caso yo use Roboto).
https://steemitimages.com/700x500/https://steemitimages.com/DQmQHSUtC5x497TvnspB5QWGwPCvyL9MVTXBSDVTH4yxx6x/Imagen_2.png
Revisamos el tipo de fuente que hemos elegido, y por último la seleccionamos.
https://steemitimages.com/700x500/https://steemitimages.com/DQmct2wgpsQTzMWYEuw8awcWsXpPhYmKFAwWY34neGuF1kA/imagen_17.png
Copiamos el siguiente texto, y lo pegamos, arriba de nuestro enlace con los estilos.css.
Luego creamos un contenedor en el cual almacenaremos nuestro formulario:
<#div class ="nombre_del_contenedor">
Después empezamos a trabajar directamente con nuestro formulario y colocamos la siguiente etiqueta:
<#form action="ruta_enlace" method="método_envio">
En el atributo action colocamos la ruta a la que nos enviara nuestro formulario, y en el atributo method establecemos el método por donde enviaremos la información (
POST o
GET).
Y luego creamos los contenedores de información (Donde el usuario escribirá la información), en este caso se crearan 3 (Nombre, correo y mensaje):
- type : Colocamos el tipo de información que se almacenara (Texto, fecha, correo…)
- class : Nombre de la clase (para trabajar en CSS)
- name: Nombre del atributo.
- Id: identificador (este nombre no se debe repetir)
- Placeholder: Nombre que se mostrara dentro del contenedor
- Value: Valor que se le asignara
Luego que realizamos todo esto abrimos nuestro navegador web, colocamos en la url la siguiente dirección: http://localhost/Formulario_Contacto/. Y observamos cómo va quedando nuestro formulario.
https://steemitimages.com/700x500/https://steemitimages.com/DQmUrhF9LXfy6sbSTJ9fh3XgFbwNWc45hSBZEREjaSf4g4k/Imagen_3.png
Codigo HTML
Diseño CSS
El código CSS se ordenó mediante bloques, les comentaré brevemente cual es la función que realiza cada bloque de código.
- * : Limpia los elementos HTML y establecemos un ancho dinámico en los diferentes navegadores
- body: Establecemos el tamaño de la letra, el tipo de letra y el color de fondo.
.wrap: Indicamos que el ancho del contenedor sea de un 90%, el ancho máximo sea de 500px y que se centre automáticamente.
form: Agregamos el color de fondo, establecemos valores dinámicos (para que se adapte a cualquier tipo de pantalla), colocamos una línea en la parte superior y agregamos una sombra
https://steemitimages.com/700x500/https://steemitimages.comDQmRLMyH4LemwSdjDesKBXc2D7JypWjk7kHKxsu5z2184GM/Imagen_4.png
https://steemitimages.com/700x500/https://steemitimages.com/DQmV86HQY2qZ6pnTPQU8XXTyZz89igf6Fos3s97HAUqLT3R/imagen_7.png
Codigo CSS
Funcionamiento PHP
Primero que nada, queremos comprobar si la información ha sido enviada (si el usuario dio clic en enviar), establecemos la condición, y luego como el formulario nos redirecciona a la misma página, queremos extraer esa información que el usuario envió, y realizar una serie de validaciones:
- Queremos que la información no tenga espacios en blanco: función trim
- Limpiaremos nuestro código (en caso de que el usuario quiera inyectar codigo html): función filter_var(FILTER_SANITIZE_STRING)
- Comprobaremos que el correo sea válido: filter_var(FILTER_VALIDATE_EMAIL).
- Convertiremos los caracteres especiales en entidades HTML: htmlspecialchars.
- Elimina los espaciados con HTML (\n, \r): stripcslashes
Si el usuario no ingresa alguno de estos valores, o deja todo los campos vacíos del formulario, mostraremos los respectivos mensajes en pantalla: “Por Favor ingrese el nombre, correo o mensaje” respectivamente.
Todos estos errores los almacenaremos en una variable, que será llamada en el caso de que haya un error.
Luego en el caso de que errores == false (que no hayan errores) queremos que se envié la información y creamos la condición donde almacenaremos la información que se enviara, en el orden adecuado.
https://steemitimages.com/700x500/https://steemitimages.com/DQmUY1K2SgdDrkugYiUum74YEdw4NjqXQfriPo9h4EvxSaR/imagen_12.png
https://steemitimages.com/700x500/https://steemitimages.com/DQmXCE882rbA7cVYH1Bc5d1GbY4ygBx7Wrrn51qHYtGHQ4J/imagen_13.png
Codigo PHP
Configuración del servidor (Xamp)
Después de que hemos terminado el código del formulario, hay que buscar la manera de que envié correos, esto lo podemos hacer de 2 maneras.
- Subimos los archivos a un hosting, y configuramos la opción de enviar correos
- Configuramos nuestro servidor web, y enviamos correos de manera local
En este caso, yo elegí la segunda opción, aquí les dejo el enlace de un vídeo donde explica detalladamente, como configurar nuestro servidor web.
Configuración Xampp
Configurar el correo electrónico
Después de configurar nuestro servidor web, nuestro proveedor de correos (Gmail), nos pide que configuremos la seguridad de nuestro correo, debido a que ha detectado que estamos accediendo a él mediante terceras aplicaciones, se nos envía un mensaje automático a nuestra bandeja de entrada.
https://steemitimages.com/700x500/https://steemitimages.com/DQmemzgg4UhNQ11hBrUfZX16bkbTE7iqbKRW8HBebag8FG4/imagen_8.png
Luego damos clic para permitir el acceso.
https://steemitimages.com/700x500/https://steemitimages.com/DQmbBSeBH2iHwYJBajPYdXqpZBUL2jTBWZkxaL5nA7kKgqU/imagen_9.png
Y por último nos llegara otro correo que nos indicara que le hemos damos acceso a aplicaciones menos seguras
https://steemitimages.com/700x500/https://steemitimages.com/DQmWd64JUJEx9HcW886g4ULQvvgKh8zDYgPPRqFTgKE9pSu/imagen_10.png
Al momento que nos llega el primer correo, verificamos inmediatamente que el servidor se ha configurado de manera exitosa, y se pondrán enviar los correos.
Nota: Este formulario no es para un envío masivo de correos, solo es para realizar pruebas, si se intenta utilizar para enviar correos masivos no funcionara.
Envió de Correos
https://steemitimages.com/700x500/https://steemitimages.com/DQmd5ucnV77EbMH2KPcjGEFatDNh1RhdzWZT4AwyGdPbDWs/imagen_14.png
https://steemitimages.com/700x500/https://steemitimages.com/DQmZqNzaFw8aiqzqiSXbVW7AqhJN9VkKoycXGDum6ftbyuq/imagen_15.png
https://steemitimages.com/700x500/https://steemitimages.com/DQmWTRQJtBJpr4AKV4d3JbhbeEHYMWJUF2WZgDpFnLcEGwh/imagen_16.png
Esto es todo amigos, espero les sea de utilidad este post, aqui les dejo algunos sitios web de donde recopile la información. Cualquier duda pueden dejarla en los comentarios.
https://www.udemy.com/php-y-mysql/
http://librosweb.es/libro/css/capitulo_4.html
https://www.w3schools.com/html/
Replies (1)
This post has received a 3.42 % upvote from @aksdwi thanks to: @josepxh.