EDIT的Codeigniter表单验证

时间:2013-06-23 06:32:10

标签: php codeigniter

我一直试图找出这个问题,但我无法做到。

说我有一个类别CRUD。 在创建类别时,我可以成功使用验证,但在进行编辑时,我遇到了这个问题。

我需要加载特定ID的编辑表单category/edit/4,以便我可以使用类别名称预先填充表单。我可以将重定向用作redirect(base_url().'admin/category/edit/'.$id),但之后我无法使用validation_errors()。我可以使用flashdata来显示错误,但是还有其他选项可以使用viewsvalidation_errors()

if ($this->form_validation->run() == TRUE) {
    //process the form data 

    }else{
        $data['subview'] = 'admin/category/edit';
        $this->load->view('admin/_layout_main', $data);
}

1 个答案:

答案 0 :(得分:2)

对于编辑,您可以这样做

控制器

function edit()
{
    $id =   $this->uri->segment(3);

    if($post = $this->input->post()){
        $this->form_validation->rule('name','Name','required');
        .
        .
        .

        if($this->form_validation->run() == TRUE)
        {
            // update query
        }else{
            $row    =   $this->my_model->get_row($id);
            $data['row']    =   $row;
            $this->load->view('edit_form',$data);           
        }
    }else{

        $row    =   $this->my_model->get_row($id);
        $data['row']    =   $row;
        $this->load->view('edit_form',$data);
    }
}