Tuesday 15 June 2010

php - codeigniter form_validation errors on flashdata not showing -



php - codeigniter form_validation errors on flashdata not showing -

my user/add form

<?php echo $this->session->flashdata('message'); ?> <?php echo form_open('user/save', array('role' => 'form')); ?> <div class="form-group"> <label for="username" class="control-label">username</label> <input type="text" class="form-control" name="username" value=""> </div> <div class="form-group"> <label for="email" class="control-label">email</label> <input type="email" class="form-control" name="email" value=""> </div> <div class="form-group"> <label for="password" class="control-label">password</label> <input type="password" class="form-control" name="password" value=""> </div> <div class="form-group"> <label for="password_confirm" class="control-label">confirm password</label> <input type="password" class="form-control" name="password_confirm" value=""> </div> <br> <div class="form-group"> <p> <?php echo btn_submit('save'); ?> <?php echo link_to_previous_page('user', ' back'); ?> </p> </div> <?php echo form_close(); ?>

my save function on user controller

public function save() { $rules = $this->user->rules; $this->form_validation->set_rules($rules); if ($this->form_validation->run() == true) { $data = array( 'username' => $this->input->post('username'), 'email' => $this->input->post('email'), 'password' => md5($this->input->post('password')), 'group_id' => 1, 'status' => 1, 'created' => date('y-m-d h:i:s'), 'created_by' => date('y-m-d h:i:s'), 'updated' => date('y-m-d h:i:s'), 'updated_by' => $this->session->userdata['username'] ); $this->user->save($data); $this->session->set_flashdata('message', msg_success('insert info success')); redirect('user'); } $this->session->set_flashdata('message', validation_errors()); redirect('user/add'); }

i have set validation rules on user_model, set alias 'user', below rules:

public $rules = array( 'username' => array( 'field' => 'username', 'label' => 'username', 'rules' => 'trim|callback__unique_username|required' ), 'email' => array( 'field' => 'email', 'label' => 'email', 'rules' => 'trim|valid_email|callback__unique_email|xss_clean|required' ), 'password' => array( 'field' => 'password', 'label' => 'password', 'rules' => 'trim|matches[password_confirm]|required' ), 'password_confirm' => array( 'field' => 'password_confirm', 'label' => 'confirm password', 'rules' => 'trim|matches[password]|required' ) );

i did same on other form, works, missed? give thanks you

try this

my user/add form

<?php echo $this->session->flashdata('message'); ?> <?php echo form_open('user/save', array('role' => 'form')); ?> <div class="form-group"> <label for="username" class="control-label">username</label> <input type="text" class="form-control" name="username" value=""> </div> <?php echo form_error('username'); ?> <div class="form-group"> <label for="email" class="control-label">email</label> <input type="email" class="form-control" name="email" value=""> </div> <?php echo form_error('email'); ?> <div class="form-group"> <label for="password" class="control-label">password</label> <input type="password" class="form-control" name="password" value=""> </div> <?php echo form_error('password'); ?> <div class="form-group"> <label for="password_confirm" class="control-label">confirm password</label> <input type="password" class="form-control" name="password_confirm" value=""> </div> <?php echo form_error('password_confirm'); ?> <br> <div class="form-group"> <p> <?php echo btn_submit('save'); ?> <?php echo link_to_previous_page('user', ' back'); ?> </p> </div> <?php echo form_close(); ?>

my save function on user controller

<?php public function save() { $rules = $this->user->rules; $this->form_validation->set_rules($rules); if ($this->form_validation->run() == true) { $data = array( 'username' => $this->input->post('username'), 'email' => $this->input->post('email'), 'password' => md5($this->input->post('password')), 'group_id' => 1, 'status' => 1, 'created' => date('y-m-d h:i:s'), 'created_by' => date('y-m-d h:i:s'), 'updated' => date('y-m-d h:i:s'), 'updated_by' => $this->session->userdata['username'] ); $this->user->save($data); $this->session->set_flashdata('message', msg_success('insert info success')); redirect('user'); } else { $this->load->view('load_your_add_from_view_here'); } }

php codeigniter validation

No comments:

Post a Comment