PHP es un lenguaje de programación de uso general que es especialmente adecuado para el desarrollo web. Su naturaleza flexible lo hace extremadamente útil para una serie de aplicaciones, con una de esas aplicaciones que vamos a abordar en este artículo: verificar si un correo electrónico ingresado en el formulario es un correo electrónico de gmail.com o hotmail.com.
Primero, tendremos que crear un formulario HTML. Para este propósito, vamos a crear un formulario muy sencillo que sólo pide un nombre y un correo electrónico.
<form method="POST" action="checkEmail.php"> <label for="name">Nombre:</label> <br/> <input type="text" id="name" name="name"/> <br/> <label for="email">Correo electrónico:</label> <br/> <input type="email" id="email" name="email"/> <br/> <input type="submit" value="Enviar"> </form>
Este es un formulario bastante básico, pero es más que suficiente para nuestros propósitos. Ahora, vamos a seguir con nuestra lógica PHP para verificar si el correo electrónico es de gmail.com o hotmail.com.
Antes de empezar, es importante recordar que este es un ejemplo básico y que en una situación de producción real, siempre se debe validar y limpiar los datos de entrada del usuario para protegerse contra ataques como la inyección SQL o el scripting entre sitios.
<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $email = $_POST["email"]; //Verificamos si el correo es de Gmail o Hotmail $domain = substr(strrchr($email, "@"), 1); if ($domain == 'gmail.com' || $domain == 'hotmail.com') { echo "El correo es de Gmail o Hotmail."; } else { echo "El correo no es ni de Gmail ni de Hotmail."; } } ?>
En el script PHP anterior, primero se verifica si el método de solicitud es POST. Luego, se obtiene el correo electrónico del formulario usando la matriz superglobal POST. A continuación, extraemos el dominio del correo electrónico usando la función substr y strrchr de PHP. La función strrchr encuentra la última ocurrencia del carácter “@” y todo lo que esté después de él. La función substr luego extrae la parte del dominio.
Finalmente, se verifica si el dominio es igual a ‘gmail.com’ o ‘hotmail.com’. Si el dominio es uno de estos, entonces se imprime un mensaje que dice “El correo es de Gmail o Hotmail.”. De lo contrario, imprime “El correo no es de Gmail ni de Hotmail.”.
Espero que haya encontrado útil este artículo. Hay muchas maneras de realizar esta tarea, y podría ser una buena idea investigar más si está interesado en optimizar su código o tomar en cuenta mas aspectos.