2017-05-18 5 views
0

私はデータベースから列を抜き出したいと思っています。私はcodeigniterのアクティブなレコードを使用しています。codeigniterのdbクエリアクティブなレコード保持オブジェクト

マイモデル関数

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'); 
    } 

今、私は変数が私の見解で、私は「配列([0] =>はstdClassオブジェクト([ハンドル]を得ることにしますprint_rとき=> Zanigade)) "

私は大量の関数を書くことなく、この関数をグローバルな"グラブアンドゴー "関数として使用しようとしているので、なぜ名前を返さないのでしょうか?私は間違って何をしていますか?私は3時間の出力で遊んでいましたが、これは簡単な修正だと分かりました。

ご協力いただければ幸いです。

+0

[OK]を確認してくださいので、私はリターンに私のモデル関数を変更することを実現$結果[0];私は$ handle-> handle .....を使って自分の選択を引き出すことができます。$ handleは、 - > columnNameを必要とせずに答えになるようにする方法がありますか?私は方法があるように感じるが、私は間違いの可能性があります – bdon

+0

配列の結果の代わりにresult_arrayをモデルで使用できる –

答えて

2

)我々は(取得ので

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

のような「チェーン化」機能を使用して一緒に$フィールドという名前のフィールドが含まれている(はずです)1行を()それをすべて入れてください。

+0

ありがとうございました!これで完全に修正されました! 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

こんにちは、私はコードを編集しました。私のコード、試してください –

関連する問題