在 Codeigniter 中将 uri 段变量从一个函数传递到另一个函数


Passing uri segment variable from one function to another in Codeigniter

嗨,寻求帮助。我最近开始使用Codeigniter编码。

我在同一个控制器中有 2 个功能。我需要从第一个函数到第二个函数的"uri 段"。尝试谷歌但没有成功。

这是我的控制器:

public item_page() {
    $id = $this->uri->segment(3);
    $this->load->view('view');
}
public validation() {
    // Form Validation Goes Here
    if($this->form_validation->run() == FALSE) {
        $this->session->set_userdata('validation_errors', validation_errors());
        redirect('item-page/'.$id); // I need variable here
    } else {
    redirect('execute');
    }
}

你可以在你的类(控制器)中一些属性

控制器:

private $page_id;
public item_page() {
    $id = $this->uri->segment(3);
    $this->page_id=$id;
    $this->load->view('view');
}
public validation() {
    // Form Validation Goes Here
    if($this->form_validation->run() == FALSE) {
        $this->session->set_userdata('validation_errors', validation_errors());
        redirect('item-page/'.$this->page_id); // I need variable here
    } else {
    redirect('execute');
    }
}
/////

/方法2:

public item_page() {
        $id = $this->uri->segment(3);
        $this -> session -> set_userdata('id', $id);
        $this->load->view('view');
    }
    public validation() {
        // Form Validation Goes Here
        if($this->form_validation->run() == FALSE) {
            $this->session->set_userdata('validation_errors', validation_errors());
            redirect('item-page/'.$this -> session -> userdata("id")); // I need variable here
        } else {
        redirect('execute');
        }
    }

希望这有帮助。