Validacion de formularios en php usando objetos
November 16th, 2009
Ahora vamos a hablar sobre el problema de validar formularios, seguramente ya habras hecho algun formulario en php y te haras dado cuenta que en ocaciones es necesario validar los datos que el usuario introduce, por ejemplo lo comun seria que un campo de texto de un formulario destinado a escribir un numero telefonico contega solamente numeros, una cierta cantidad de caracteres y tal vez podria contener guiones. Tal vez habras notado que puedes escribir toda clase de cosas en un formulario y enviar esos datos extraños a un script php para procesarlos, inclusive puedes enviar consultas sql o instrucciones de php, es ahi que por cuestiones de fiabilidad de los datos y seguridad del sistema es necesario la validacion de los datos, antes de cualquier otra accion como su procesamiento o almacenamiento en una base de datos.
Esta perfecto pensaras, lo unico que hay que hacer es validar los formularios y listo!!, resulta que surge otro problema, supon que en el lugar donde trabajas te han pedido validar los formularios del sitio de la empresa, lo que no te dijeron es que el sitio de la empresa tiene mas de 50 formularios y cada formulario tiene alrededor de entre 15 y 20 campos, validar lo anterior es una tarea enorme.
Y el enfoque para resolver este problema es la programacion orientada a objetos, lo cual me permitira reutilizar mucho del codigo que escriba y ahorrarme mucho tiempo.
La idea a de esto es crear una serie de clases que me sirvan para validar los distintos campos de un formulario, por ejemplo una clase para validar una campo telefonico, una clase para validar un campo descripcion, otra clase para validar un campo reservado para un nombre etc, y una clase especial que nos servira para manejar las demas clases.
La clase control sera capaz de darme la siguiente informacion:
- Podra decir si se genero o no un error en el proceso de validacion.
- Podra devolverme un error si es que lo hubo de un campo en especifico.
- Podra devolverme todos los errores generados.
Luego vendran las clases correspondientes para validar los distintos campos, estas clases heredaran de una clase abstracta, el unico objetivo de esto es que todo objeto validador contenga un metodo validar impresindible para el proceso de validacion de formularios, y que tenga a disponibilidad una serie de metodos basicos para validar campos.