Codeigniter - 无法在控制器中加载多个视图

时间:2012-12-13 04:47:21

标签: codeigniter

大家好,感谢您花时间看我的问题。

我曾尝试一起运行视图(site_nav,site_header和site_footer)并且工作正常。

当我尝试运行视图(view_home)和模型时,它也运行良好。

但是,当我一起运行所有视图和模型时,视图(site_nav,site_header和site_footer)不起作用。

有人可以帮忙吗?

public function home(){
    $this->load->model("model_cms_home");
    $data["results"] = $this->model_cms_home->getData("cms_home");
    $this->load->view("site_nav");
    $this->load->view("site_header");
    $this->load->view("view_home", $data);
    $this->load->view("site_footer");
}


VIEW("view_home")



<div id="home_hat1"> <img src="<?php echo base_url(); ?>pics/home_hat1.jpg"> </div>


<div id="content">

    <div id="dinner">

   <div class="home_title">

     <?php
    $query = $this->db->query("SELECT `title` , `text1` FROM `cms_home` WHERE       `ID` =1");

    if ($query->num_rows() > 0){
    $row = $query->row_array();

        echo $row['title'];

    }           
    ?>
  </div>

<div class="home_content">

    <?php
    $query = $this->db->query("SELECT `title` , `text1` FROM `cms_home` WHERE `ID` =1");

    if ($query->num_rows() > 0){
    $row = $query->row_array();

        echo $row['text1'];

    }           
    ?>
</div>

</div>

2 个答案:

答案 0 :(得分:3)

您无法在一个控制器功能中调用多个视图。 这可以在视图中完成。 我建议你首先要创建一个模板,并在该模板中调用你的视图

<强> templete.php

<html>
<head>
<body>
   $this->load->view("site_nav");
   $this->load->view("site_header");
   <?php echo $content; ?>
   $this->load->view("site_footer");
</body>
</head>
</html>

答案 1 :(得分:1)

我的建议是使用view_home调用include();中的其他页面。您无法看到其他页面,因为将根据您的代码调用最后一页。如果您在每个页面中发出警报,您将知道它实际上已调用所有页面。