Codeigniter索引参数

时间:2015-10-18 10:27:47

标签: php codeigniter indexing

这不是文件夹中唯一的控制器。我已经删除了index.php。 但是,一旦我为购物车添加了这部分功能

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Product extends CI_Controller 
{

  public function index($index = 0)
  {
      $data['listProduct'] = $this->mproduct->findAll();
      $this->load->view('template/header.php', $data);
      $this->load->view('index', $data);
  }
}

它给了我这个错误

消息:未定义的属性:Product :: $ mproduct

文件名:controllers / product.php

行号:7

这是我的模特

<?php

class MProduct extends CI_Model
{
    function _construct()
    {
        parent::_construct();
    }

function findAll()
{
    return $this->db->get('product')->result();
}



    function find($id)
       {
            $this->db->where('id', $id);
            return $this->db->get('product')->row();
        }
}

1 个答案:

答案 0 :(得分:0)

您需要在调用之前先加载模型。

此外,第一个字母应大写,其余名称应为小写。

  

类名必须首字母大写其余部分   名称小写。确保您的类扩展了基础Model类。

Refer

添加:

$this->load->model ( 'Mproduct' );
$data['listProduct'] = $this->Mproduct->findAll();

完整代码:

控制器:controllers / Product.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Product extends CI_Controller {

public function index()
{

    $this->load->model ( 'Mproduct' );
    $data['listProduct'] = $this->Mproduct->findAll();
    $this->load->view('template/header.php', $data);
    $this->load->view('index', $data);
}

}

型号:models / Mproduct.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Mproduct extends CI_Model {

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

function findAll()
{
    echo 'model';
}



    function find($id)
       {
            echo 'model';
        }
}