lunes, 20 de enero de 2014

VALIDADORES CODEIGNITER

LA FUNCIÓN PRESENTADA A CONTINUACIÓN PERMITE VALIDAR 


function validar_guardar() {
        $this->form_validation->set_rules('usuario', 'Usuario', 'required|min_length[4]|max_length[25]|xss_clean|is_unique[cuenta.login]');
        $this->form_validation->set_rules('clave', 'Constraseña', 'required|min_length[6]|max_length[25]|matches[confirmar]|xss_clean');
        $this->form_validation->set_rules('nombre', 'Nombres y  Apellidos', 'required|min_length[7]|max_length[100]|xss_clean');
        $this->form_validation->set_rules('email', 'Email', 'trim|valid_email');

        $this->form_validation->set_message('required', 'Debe introducir el campo %s');

        $this->form_validation->set_message('min_length', 'El campo %s debe ser de al menos %s caracteres');
        $this->form_validation->set_message('max_length', 'El campo %s debe ser menor que %s caracteres');
        $this->form_validation->set_message('valid_email', 'Debe introducir el campo %s');
        $this->form_validation->set_message('is_unique', 'Este USUARIO ya existe !!');
        $this->form_validation->set_message('matches', 'Las contraseñas ingresada no coincide, por favor verifique que sean exactas');

        if ($this->form_validation->run() == FALSE) {

            return FALSE;
        } else {
            return TRUE;
        }
    }

Establecer Reglas  Validación

CodeIgniter le permite establecer tantas reglas de validación como necesite para un campo dado, pornerlas en cascada, e incluso preparar y preprocesar los datos de los campos al mismo tiempo. Para establecer las reglas de validación usará la función set_rules():
$this->form_validation->set_rules();
La función anterior toma como entrada tres parámetros:
  1. Nombre del campo - el mismo que le dio al campo del formulario.
  2. Un nombre "humano" para este campo, que deberá insertarse en el mensaje de error. Por ejemplo, si el campo se llama "usuario" puede darle un nombre humano como "Nombre de Usuario"
  3. Las reglas de validación para este campo de formulario.
Este es un ejemplo. En su controlador (form.php), agregue este código justo debajo de la función de inicialización de la validación:
$this->form_validation->set_rules('username', 'Usuario', 'required');
$this->form_validation->set_rules('password', 'Contraseña', 'required');
$this->form_validation->set_rules('passconf', 'Confirmar Contraseña', 'required');
$this->form_validation->set_rules('email', 'Email', 'required');


Su controlador debería verse así:
<?php
class Form extends CI_Controller {
    function index()
    {
        $this->load->helper(array('form', 'url'));
        $this->load->library('form_validation');
        $this->form_validation->set_rules('username', 'Usuario', 'required');
        $this->form_validation->set_rules('password', 'Contraseña', 'required');
        $this->form_validation->set_rules('passconf', 'Confirmar Contraseña', 'required');
        $this->form_validation->set_rules('email', 'Email', 'required');

        if ($this->form_validation->run() == FALSE)
        {
            $this->load->view('mi_form');
        }
        else
        {
            $this->load->view('form_success');
        }
    }
} ?>


No hay comentarios:

Publicar un comentario