为什么我无法从控制器获取数据数组以在CodeIgniter中查看?

时间:2018-02-20 17:06:29

标签: php codeigniter-3

我有一个模型,控制器和视图文件。

模型

  public function isletme_bilgileri($yetki){
    $this->db->select('*');
    $this->db->from('isletme_bilgileri');
    $this->db->where($yetki);
    $query=$this->db->get();
   return  $result = $query->result();    

控制器

 $this->load->model('Bilgi_Model');
          $result = $this->Bilgi_Model->isletme_bilgileri($this->session->user_sess['yetki']);
          $isletme_bilgileri=array(
          'id'              =>$result->id,
          'isletme_adi'     =>$result->isletme_adi,
                  );


    // işletme bilgisi Çekildi //        

    $this->load->view('admin/_header', $isletme_bilgileri);

查看(_ header.php)

<span class="logo-lg"><b><?=$this->isletme_bilgileri('isletme_adi')?></b></span>

但我没有在视图文件中获取数据。

错误

  

严重性:注意

     

消息:尝试获取非对象的属性

     

文件名:admin / Home.php

     

行号:19

     

Backtrace:文件:C:\ wamp64 \ www \ apartman_ys \ application \ controllers \ admin \ Home.php   行:19   功能:_error_handler

     

文件:C:\ wamp64 \ www \ apartman_ys \ index.php   行:315   功能:require_once

4 个答案:

答案 0 :(得分:0)

CI将变量作为关联数组传递给视图:

$data = array('car' => 'blue');
$this->load->view('index', $data);

然后在你看来:

<span><?=$car;?>//outputs blue</span>

答案 1 :(得分:0)

这是您的模型的问题。检查是否正在为正在执行的查询返回行。您可以使用此方法在CI中获取最后执行的查询。

$this->db->last_query();

在你的控制器中回显这个,复制查询并将其粘贴到phpMyAdmin或无论你使用的是什么。

答案 2 :(得分:0)

In Controller
$data['isletme_bilgileri']=array(
          'id'              =>$result->id,
          'isletme_adi'     =>$result->isletme_adi,
                  );
$this->load->view('admin/_header', $data)

<span class="logo-lg"><b><?=$isletme_bilgileri['isletme_adi']?></b></span>

答案 3 :(得分:0)

是的ı修复它 $ result变量必须是$ result [0]

现在实际的代码就是这个;

$result = $this->Bilgi_Model->isletme_bilgileri();
            $data=array(
                'id'=>$result[0]->id,
                'isletme_adi'=>$result[0]->isletme_adi,
                'isletme_kisa_ad'=>$result[0]->isletme_kisa_ad
            );