Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Form validation in codeigniter always return false

I am new in codeigniter and I can't figure out why my form_validation keeps on returning false. Here are my codes:

Login Controller

class Login extends CI_Controller {

     function __construct()
     {
       parent::__construct();
       $this->load->helper(array('form','url'));
       $this->load->library('form_validation');
       $this->load->library('session');
       $this->load->model('user','',TRUE);
     }

     function index()
     {
        $this->load->view('login_view');
     }

     function user_registration_show(){

        $this->load->view('registration_view');

     }

     function user_login_process(){


     }

     function user_registration_process(){

        $this->form_validation->set_rules('fname', 'First Name', 'trim|required|xss_clean');
        $this->form_validation->set_rules('lname', 'Last Name', 'trim|required|xss_clean');
        $this->form_validation->set_rules('gender', 'Gender', 'trim|required|xss_clean');
        $this->form_validation->set_rules('address', 'Address', 'trim|required|xss_clean');
        $this->form_validation->set_rules('emailadd', 'Email Address', 'trim|required|xss_clean');
        $this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean');
        $this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean');
        $this->form_validation->set_rules('password1', 'Re-type Password', 'trim|required|xss_clean');
        if ($this->form_validation->run() == FALSE) {
            $this->load->view('registration_view');
        } else {

            $pass = $this->input->post('password');
            $pass1 = $this->input->post('password1');
            if($pass!=$pass1){

                $data['message_display'] = 'Password mismatched!';
            }else{
                $data = array(
                'Fname' => $this->input->post('Fname'),
                'Lname' => $this->input->post('Lname'),
                'Gender' => $this->input->post('Gender'),
                'Address' => $this->input->post('Address'),
                'EmailAdd' => $this->input->post('EmailAdd'),
                'username' => $this->input->post('username'),
                'password' => $this->input->post('password')
                );
            }

        }
     }
}

registration_view

<?php echo form_open('login/user_registration_process'); ?>
<div class="content-box-wrapper">
        <div class="form-group">
             <div class="input-group">
                   <input type="text" class="form-control" name="fname" placeholder="First Name" >
              </div>
        </div>
        <div class="form-group">
             <div class="input-group">
                   <input type="text" class="form-control" name="lname" placeholder="Last Name" >
              </div>
        </div>
        <div class="form-group">
             <div class="input-group">
                  <select class="form-control" name="gender" >
                        <option disabled="disabled">Gender</option>
                        <option value="Male">Male</option>
                        <option value="Female">Female</option>
                   </select>
              </div>
         </div>
         <div class="form-group">
              <div class="input-group">
                   <input type="text" class="form-control" name="address" placeholder="Address">
              </div>
          </div>
          <div class="form-group">
               <div class="input-group">
                    <input type="email" class="form-control" name="emailadd" placeholder="Email Address" >
                </div>
           </div>
           <div class="form-group">
                <div class="input-group">
                     <input type="text" class="form-control" name="username" placeholder="Username" >          
                 </div>
            </div>
            <div class="form-group">
                 <div class="input-group">
                      <input type="password" class="form-control" name="password" placeholder="Password" >
                  </div>
             </div>
             <div class="form-group">
                  <div class="input-group">
                       <input type="password" class="form-control" name="password1" placeholder="Re-type Password" >
                  </div>
              </div>
              <input type="submit" class="btn btn-blue-alt btn-block" value="Register"/>        
</div>
<?php echo form_close(); ?>

I am using codeigniter 3.1.3. Can anyone help me?

like image 213
pryxen Avatar asked Apr 07 '26 06:04

pryxen


1 Answers

Your form validation fails due to use of xss clean check in all the fields. If you remove that it validate your fields.As your data is already xss cleaned(assuming global_xss_filtering is TRUE in config)

like image 200
aishwarya Avatar answered Apr 08 '26 18:04

aishwarya