1

モデルクエリからコードイグナイターのコントローラー関数にデータ (単一行) を取得する方法を理解できません。スタックオーバーフローの投稿を検索しましたが、運がありません。次のようなモデルにクエリがあります。

function login($email, $sha1Pass) {
    $loginArray = array('email' => $email, 'pw' => $sha1Pass);
    $this->db->select('lid, email, pw');
    $this->db->from('login');
    $this->db->where($loginArray);
    $query = $this->db->get();
    return $query->row();
}

返される行は 1 行だけです[lid, email, pw]

次に、このモデル クエリを呼び出すコントローラーを用意します。

$report['row'] = $this->LoginCheck->login($email, $encp); 

私が必要とするのは、行からデータベースの2つのフィールドであり、それらを次のような変数に割り当てます:

$lid = $report['lid'];
$email = $report['email'];

lidおよびemailは、データベースのフィールドです。

4

4 に答える 4

0

これを試して:

Login_model

public function auth($nm,$pwd)
{
    $this->db->select('uname,password');
    $q1=$this->db->get_where('user_details',array('uname'=>$nm,'password'=>$pwd));
    return $q1->row();
}

//you can call this method from controller like

$data['query']=$this->Log_Model->auth($unm,$pswd);

//And you can create session variable like,

$this->session->set_userdata('uname',$data['query']->uname);
于 2016-04-13T05:18:16.177 に答える