我有一个模型,它必须从包含公司信息的表中收集信息。公司名称、地址等数据。例如,我可以使用公司名称放在页脚中,并将该名称放在发票中。
这是我的型号:
<?php
class Company extends CI_Model
{
public $name = '';
public $adress = '';
function __construct()
{
parent::__construct();
}
function get_info() {
$query = $this->db->query('SELECT * FROM company');
foreach ($query->result() as $row ) {
$this->name = $row->name;
$this->adress = $row->adress;
}
}
}
我的控制器是这样的:
public function test() {
$this->load->model('Company');
$this->Bedrijf->get_info();
echo $this->bedrijf->name;
}
当我打开我的测试站点时,我得到一个错误:
未定义的属性:testproject::$name
我的代码出了什么问题?
试试这样的
function get_info() {
$query = $this->db->query('SELECT * FROM company');
foreach ($query->result() as $row ) {
$data['name'] = $row->name;
$data['adress'] = $row->adress;
}
return $data;
}
我的控制器是这样的:
public function test() {
$this->load->model('company');
$company_info = $this->company->get_info();
echo $company_info['name'];
}
试试这个:
public function test() {
$obj_model = $this->load->model('Company');
$Bedrijf->get_info();
echo $Bedrijf->name;
}
尝试类似的东西
型号
function get_info() {
$query = $this->db->query('SELECT * FROM company');
return $query->result();
}
控制器
public function test() {
$this->load->model('Company');
$obj = $this->Company->get_info();
echo $obj->name;
}
因为没有正确加载,所以建模。查看如何在控制器中加载模型。http://ellislab.com/codeigniter/user-guide/general/models.html#loading
试试这个。
public function test() {
$this->load->model('Company', 'Bedrijf');
$this->Bedrijf->get_info();
echo $this->Bedrijf->name;
}
// You are not defining assigning the different object here
// from that you are calling i.e. $this->Bedrijf->get_info();
$this->load->model('Company');
$this->Bedrijf->get_info();