通过codeigniter中的控制器传递模型中的数据

时间:2011-09-03 23:56:04

标签: codeigniter

我几次听说过codeigniter,所以我很好奇并想到为什么不呢。我学了一些教程,非常高兴看到框架是如何工作的。 现在我有以下问题我想通过我的控制器传递我的模型中的数据,并在我的视图中显示这个但我总是运行到下面的错误:致命错误:调用成员函数查询()第9行的C:\ wamp \ www \ codeigniterTest \ application \ models \ leden_model.php中的非对象。这个错误的有趣之处在于,当我在这个问题上谷歌时,很多论坛主题是关于这个问题但是无处可去我得到了正确的答案。我的代码看起来像这样。

codegniter版本2.03

class Leden extends CI_Controller {

function __construct(){
    parent::__construct();
}

function index()
{
    $this->load->model('leden_model');
    $ledenModel = new Leden_model();
    $data = $ledenModel->allLeden();
    $this->load->view('leden_overzicht',$data);
}
}


<?php
class Leden_model extends CI_Model {

    function __construct(){
        parent::__construct();
    }

    function allLeden(){
        $query = $this->db->query("SELECT * FROM leden");
        foreach ($query->result_array() as $row)
        {
           echo $row['Naam'];
           echo $row['Achternaam'];
           echo $row['Email'];
        }

        return $query;
    }

}

&GT;

当我在我的控制器中进行查询时,我得到了我想要的结果,为什么不在我的模型中呢?

我的问题是我做错了什么?

2 个答案:

答案 0 :(得分:3)

<强> Leden_model.php

  

?php

     

类Leden_model扩展了CI_Model {

function __construct(){
    parent::__construct();
}

function allLeden()
{
    $data = array();
    $this->db->select();
    $query = $this->db->get('leden');

    if ($query->num_rows() > 0)
    {
        foreach ($query->result_array() as $row)
        {
            $data[] = $row;
        }
    }
    $query->free_result();
    return $data;
}

<强> Leden_controller.php

  

?PHP的

     

class Leden扩展了CI_Controller {

function __construct()
{
    parent::__construct();

    $this->load->model('leden_model');
}
     

function index(){

$data['leden_data'] = $this->ledenModel->allLeden();
$this->load->view('leden_overzicht',$data); } 
     

}

<强> leden_overzicht.php

  

?PHP的

     

if(count($ leden_data))   {

     

foreach($ leden_data as $ key =&gt; $ list)   {

     

echo $ list ['Naam']。 “”。 $ list ['Achternaam']。 “”。 $ list ['电子邮件']。 “
”;

     

}}       其他{       回声“没有数据。”; }

答案 1 :(得分:0)

你加载数据库了吗?例如:

  

$这 - &GT;负载&GT;数据库();