如何从CodeIgniter中的控制器获取特定页面的内容?

时间:2017-03-28 12:10:27

标签: php codeigniter

我想使用CodeIgniter Framework创建动态页面。当我点击链接时,它会创建一个取决于id的链接。但没有在页面中显示任何内容。显示"未找到对象。"如何在此处连接控制器和视图?

$ route [' report /:any /:num'] =" home / reportcard";

这是我的代码:

  1. 控制器:

    公共职能指数(){

    $this->load->model("item_model");
    $data['records'] = $this->item_model->getAllItems();
    $this->load->view('home',$data);
    }
    
    function reportcard(){
        $this->load->view('main');  
    }
    
  2. 查看创建链接的位置取决于id:

    <div class="row">
                        <ul class="home-grid">
                            <?php foreach ($query->result() as $row): ?>
                            <li>
                                <a  href="<?php echo base_url() ?>report/<?=$row->item ?>/<?=$row->id ?>" class="btn btn-lg btn-warning view-report"><span class="glyphicon glyphicon-list-alt"></span> <br/>
                                <?=$row->item ?><br/>
                                 <small>Click here for see report</small>
                                </a>
                            </li>
                            <?php endforeach; ?>
                        </ul>
     </div>
    
  3. 为了在main.php视图中查看目的,我刚刚添加了#34; Hello World&#34;。但它没有表现出任何东西。我怎样才能得到这个观点?

3 个答案:

答案 0 :(得分:0)

https://www.codeigniter.com/user_guide/general/views.html 检查“创建循环”部分

$ data必须是一个数组,然后可以在您的视图中访问它,如

foreach ($records as $record) :

答案 1 :(得分:0)

也许更好的解决方案是创建In[71]: pd.DataFrame({'gre': [1,2,3], 'gpa': ['a', 'b', 'c']}, columns=['gre', 'gpa'], index=['x', 'y', 'z']) Out[71]: gre gpa x 1 a y 2 b z 3 c 代码并从视图中提交您想要的任何内容。 然后在控制器中你可以添加: In[72]: pd.DataFrame({'gre': [1,2,3], 'gpa': ['a', 'b', 'c']}, index=['x', 'y', 'z']) Out[72]: gpa gre x a 1 y b 2 z c 3 查看codeigniter documentation

答案 2 :(得分:0)

您的reportcard功能应如下所示:

function reportcard($id){
    $data['report'] = $this->item_model->getReport($id);
    $this->load->view('main', $data);  
}
路线应该像:

$route['report/:num'] = "home/reportcard/$1";

视图应该像:

<div class="row">
                    <ul class="home-grid">
                        <?php foreach ($query->result() as $row): ?>
                        <li>
                            <a  href="<?php echo base_url() ?>report/<?=$row->id ?>" class="btn btn-lg btn-warning view-report"><span class="glyphicon glyphicon-list-alt"></span> <br/>
                            <?=$row->item ?><br/>
                             <small>Click here for see report</small>
                            </a>
                        </li>
                        <?php endforeach; ?>
                    </ul>
 </div>

然后在主视图中,您可以访问以下数据:

print_r($report);