2017-05-18 61 views
0

我想拉出一個列的數據庫,很簡單吧?我正在使用codeigniter的活動記錄。數據庫查詢codeigniter活動記錄returing對象

我的型號功能

public function getcolumn($field, $table, $kfield, $key) 
    { 
     $this->db->select($field); 
     $this->db->from($table); 
     $this->db->where($kfield, $key); 

     $query = $this->db->get(); 
     $results = $query->result(); 

     return $results; 
    } 

我的控制器具有:

public function users() 
    { 
    $body['handle'] = $this->admin->getcolumn('handle', 'users', 'userid', $userid) 

    $this->load->view('template/header'); 
    $this->load->view('admin/users', $body); 
    $this->load->view('template/footer'); 
    } 

現在當我的print_r,我認爲,變量I得到「陣列([0] => stdClass的對象([把手] => Zanigade))「

因爲我試圖用這個函數作爲一個全局的」抓取和去「函數而不寫一大堆函數,爲什麼它不會只返回這個名字?我究竟做錯了什麼?我一直在玩輸出3小時,我知道這是一個愚蠢的簡單的解決方案,我只是錯過了標記。

任何幫助將不勝感激。

+0

行,所以我意識到,改變我的模型函數返回$結果[0];允許我通過使用$ handle-> handle來拉我的選擇.....有沒有辦法讓它處理只是答案而不必 - > columnName?我覺得有一種方法,雖然我可能會誤 – bdon

+0

爲陣列,你可以在模型中使用result_array而不是結果 –

回答

2

把它放在一起使用,像這樣

$results = this->db->get()->row()->$field; 

的「鏈接」功能,我們得到()一行(),它(應該)包含一個字段命名爲$場。

+0

謝謝YOUUUUU!這固定完美! YaY因爲沒有寫100個函數來拉取所需的數據lmao ......這很簡單,我發誓我正在嘗試一切,除了這個smh ... – bdon

0

看來你正在返回的結果,而不是單列,試試這個

public function getcolumn($field, $table, $kfield, $key) 
{ 
    $this->db->select($field); 
    $this->db->from($table); 
    $this->db->where($kfield, $key); 

    $query = $this->db->get(); 

    return $query->row()->$field; 
} 

欲瞭解更多信息,請檢查CodeIgniter用戶指南 https://www.codeigniter.com/userguide3/database/examples.html

+0

嗨,我已編輯代碼,嘗試,實際上有一個小錯誤我的代碼,請嘗試 –