0

我们有两个控制器,一个members.php用于注册用户,另一个 reserv.php用于预订公交车票。

我想在完成第一个控制器类后加载第二个控制器。

成员.php

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Members1 extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('member_model1');
    }

    public function index() {
        $table = $this->member_model1->insert_members();
        $data['members'] = $table;
        //$this->load->view('header1', $data);
        $this->load->view('reservation_view',$data);
        //$this->load->view('members');
        //$this->load->view('footer');
    }
}

保留.php

<?php 

class reserve extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('member_model1');
    }

    function index() {
        $table = $this->member_model1->get_members();
        $data['members'] = $table;
        //$this->load->view('header1', $data);
        $this->load->view('reservation_view',$data);
        //$this->load->view('reservation_view');    
        // $this->load->helper(array('form'));
        //$this->load->view('reservation_view');
    } 
}
?>
4

1 回答 1

0

要从另一个控制器调用一个控制器,您可以使用函数redirect()

// In Members1 controller
redirect('/reserve/index');

请注意,您将无法与重定向一起发送数据,例如在加载视图时。要发送数据,您必须使用$this->session->set_flashdata();,因为重定向似乎使用header()(我建议您在这篇文章中获得战利品)。

// In Members1 controller
$this->session->set_flashdata('key', 'value');
redirect('/reserve/index');

顺便说一句,当我查看您的两个类时,我想知道您为什么不简单地创建一个Ticket具有两个方法的唯一类,registerUser()并且bookTicket()(这些名称纯粹是花哨的,可以随意使用您的)。

于 2013-07-23T15:05:16.450 回答