codeigniter在每次页面加载时显示来自DB的随机记录

时间:2011-05-16 15:30:15

标签: php oop codeigniter templating

我有一个查询从数据库表中获取一条随机记录并保存在其中,$banner_text我在模板中显示横幅文字时遇到问题。

下面是我的所有其他控制器扩展的MY_Controller代码,我想用它来发送$banner_text到正在构建的任何模板/布局。

class MY_Controller extends Controller {

    function __construct() {
        parent::Controller();
        $this->load->model('banners_model');
        //$this->output->enable_profiler(TRUE);
        $this->template->set_theme('moovjob');
        $this->template->set_layout('main');
        //$this->banners_model->get_header(); 

        //$this->template->title('Some title');
        //$this->template->build('main');
    }
}

1 个答案:

答案 0 :(得分:0)

要在此控制器(或子控制器)加载的所有视图中全局加载变量,请使用...

$this->load->vars($data);

Loader Class的一部分)

所以在你的情况下。

类MY_Controller扩展Controller {

function __construct() {
    parent::Controller();
    $this->load->model('banners_model');
    //$this->output->enable_profiler(TRUE);
    $this->template->set_theme('moovjob');
    $this->template->set_layout('main');
    $data['banner_text'] = $this->banners_model->get_header(); 
    $this->load->vars($data);

    //$this->template->title('Some title');
    //$this->template->build('main');
}

现在$banner_text将在此控制器加载的所有视图中可用。 }