如何在视图中加载视图 代码点火器


How to load view in a view CodeIgniter

控制器方法view()

function view() {
    $data['myClass'] = $this;
    $query = $this->db->query("Select * from news");
    if($query->num_rows() > 0) {
        foreach($query->result() as $row) {
            $data['news'][] = $row;
        }
    }
    $this->load->view('news_view', $data);
}

视图

<marquee onmouseover="this.stop();" onmouseout="this.start();" scrollamount="5" behavior="scroll"  direction="left">
    <?php
    $myClass->method('view');
    /*echo "<pre>";
    die(print_r($data, TRUE));*/
    foreach($news as $news) { ?>
        <p id="marque"><?php echo $news->description; ?></p>
    <?php } ?>
</marquee>

我的默认控制器是主页,我想在我的主视图中加载此视图但是他们给了我未定义的每个参数的错误但是当我调用控制器功能视图时,就可以了我的问题是如何在主视图中加载此视图

我正在寻找相当于requestaction()的蛋糕PHP。

您需要将其分解并将代码分离到 MVC 中。试试这个:

控制器:

function controller_method() {
    $this->load->model("model_name");
    $data['news'] = $this->model_name->model_method();
    $this->load->view('news_view', $data);
}

型:

function model_method() {
    $this->db->select("*");
    $this->db->from("news");
    $query = $this->db->get();
    if ($query->num_rows() > 0) {
        return $query->result();
    } else {
        return false;
    }
}

视图:

<marquee onmouseover="this.stop();" onmouseout="this.start();" scrollamount="5" behavior="scroll"  direction="left">
    <?php foreach ($news as $new) { ?>
        <p id="marque"><?= $new->description; ?></p>
    <?php } ?>
</marquee>