2015-07-12 90 views
1

我試圖創建一個簡單的更新數據。我收到以下錯誤PHP的通知後:消息:試圖讓非對象的屬性時,獲取ID

遇到

一個PHP錯誤

嚴重性:注意

消息:試圖讓非對象的屬性

文件名:belanja/ubah.php

行號:29

這是我的控制器

public function ubah($id){ 
     $data = array(); 
     $data['msg']   = $this->_get_flashdata(); 
     $data['category']  = $this->m_category->get(); 
     $data['notif']   = $this->m_property->count_properti(); 
     $data['notifikasi']  = $this->m_property->notif_properti(); 
     $data['rows']   = $this->m_property->getByID($id); 

     $html = array(); 
     $html['header']  = $this->load->view('admin/header',$data,true); 
     $html['kiri']  = $this->load->view('admin/kiri',null,true); 
     $html['content'] = $this->load->view('admin/belanja/ubah',$data,true); 
     $this->load->view('admin/template',$html); 
    } 

這是我的模型

public function getByID($id){ 
      $sql= "SELECT * FROM properti WHERE nID = '".$id."'"; 
      return $this->db->query($sql)->result(); 
     } 

這是我的看法

<div class="col-md-6"> 
          <h4 class="header green clearfix"> 
           Nama Properti 
          </h4> 
          <input class="form-control" type="text" name="nama" value="<?php echo $rows->nama ?>" /> 
         </div> 

我不明白爲什麼笨顯示錯誤,當我不使用它的任何控制器或方法。那麼如何解決我的代碼?請

+0

你怎麼能指望我們找到29行? –

+0

'<輸入類= 「形式控制」 類型= 「文本」 名稱= 「NAMA」 值= 「<?PHP回聲$ rows-> NAMA?>」/>' –

+0

什麼是'$ rows'變量?你沒有顯示它的代碼。 ('$數據[ '行'] = $這個 - > m_property-> getByID($ ID);') – odedta

回答

0

檢查線29碼(我們不知道你的整個文件,因此,我們不能發現,某些行)。

但它可能是$this->m_category$this->m_property值爲非object值或null。因此,你不能訪問任何屬性或方法->。這也可能發生在控制器,模型或視圖中,請根據失敗的報告文件進行檢查。

可以的var_dump()的變量,以檢查它的當前內容。如果你是從數據庫加載它,確保它沒有返回空集,或者你已經存儲在一個對象,而不是一個陣列

0

我認爲你是在陣列得到一些價值,並得到它作爲對象。 我認爲這是對你的視圖文件

NAMA?> 與 NAMA取代它呢?>
0

在型號

public function getByID($id) 
    { 
    $query = $this->db->query("SELECT * FROM properti WHERE nID = '$id'"); 
    $result = $query->result_array(); 
    return $result; 
    } 
相關問題