PHP - 9na Entrega Expresiones regulares
Aquí les traigo un tema importante que tiene que ver con el ingreso de datos en cualquiera de nuestros desarrollos y es el de la validación de datos que ingresa el usuario en nuestra base de datos. Fundamental para condicionar el ingreso dependiendo de lo que se quiera obtener, veníamos usando algo parecido com trim, pero el siguiente método es un poco más completo.
Para el ejemplo vamos a ver como validar un nombre de usuario y vamos a seguir aplicando lo que vimos en el post anterior. Recordá que es bueno que escribas el código desde cero para entender su sintaxis y mejorar la práctica.
<!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"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Buenas practias POST</title> <?php $ingresoInicial = FALSE; if (empty($_POST["Enviar"])) { $ingresoInicial = TRUE; $_POST["nombre"] = ""; $_POST["correo"] = ""; } ?> </head> <body> <h1>Validación de Formularios</h1> <p>Práctica para validad formularios.</p> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> <fieldset> <legend>Ingresá tu nombre y correo.</legend> Nombre:<input type="text" id="nombre" name="nombre" value="<?php echo $_POST['nombre']; ?>"/> <br /><br /> Correo:<input type="text" id="correo" name="correo" value="<?php echo $_POST['correo']; ?>"/> <br /><br /> <input type="submit" value="Enviar" name="Enviar"/> <input type="reset" value="Limpiar" /> </fieldset> </form> <?php if (!$ingresoInicial) { if (empty($_POST["nombre"])) { echo "<p>Te falta poner el nombre!</p>"; } if (empty($_POST["correo"])) echo "¡Tiene que introducir su email!"; elseif (!eregi("^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $_POST["correo"])) echo "Correo no válido"; } ?> </body> </html>
Como vemos creamos los 2 campos nobmre y correo, mas o menos con lo que veníamos viendo hasta elseif en donde usamos la función !eregi y le pasamos la cadena de caracteres que va a adminitir nuestro correo no es difícil entenderlo y no voy a explicar demasiado el tema. La pista que doy es que el operador + es el que hace una especie de concatenación en la cadena de texto que se ingresa por ejemplo pepito+@pepito+\.com.
Y hasta ahí con esto.
Espero que sirva, saludos!
Ch4rl1X.