0

データベースから選択していますが、データは正常に戻ってきます。ユーザー名や名前などの配列の要素にアクセスする方法がわかりません。これが出力です。

Array ( [0] => stdClass Object ( [id] => 9 [fullname] => خالد الغامدي [メンバーシップ] => free [ユーザー名] = > kkkkk [パスワード] => 16d7a4fca7442dda3ad93c9a726597e4 [メール] => someone@gmail.com [概要] => [都市] => リヤド [プロフィール写真] => /home2/sdds/public_html/uploads/Red_velvet_cupcakes_with_roses.jpgRed_velvet_cupcakes_with_roses.jpg [モバイル] => [電話番号] => [住所] => [ギャラリーリンク] => ) )

これは、上記を返すモデルのコードです。

public function login()
{
    $this->db->select('*');
    $this->db->from('members');
    $this->db->where('username', $this->input->post('username'));
    $this->db->where('password', md5($this->input->post('password')));
    $query = $this->db->get();
    return $query->result();
}

では、ここで何をすべきか?前もって感謝します

4

2 に答える 2

1

これを確認してください:

//model function in your model    
public function login()
    {
        $this->db->select('*');
        $this->db->from('members');
        $this->db->where('username', $this->input->post('username'));
        $this->db->where('password', md5($this->input->post('password')));
        $query = $this->db->get();
        return $query->row();
    }
   // in controller  
    $logindata = $this->YOUR_MODEL_NAME->login();
// access like this

    echo $logindata->fullname;

参照: https://www.codeigniter.com/user_guide/database/results.html

于 2013-04-04T18:20:44.233 に答える
0

積み上げ -- また、モデルメソッドで実際に何かを得ているかどうかも確認してください

 // check how many records returned with num_rows()
 if ($query->num_rows() == 1) {

       // since there is just one record, use row()
       // when 2 or more records, use result() 
       return $query->row();
    }
    else
    { return false; } 

そうすれば、コントローラーで何かが戻ってきたかどうかがすぐにわかり、適切なビューを表示できます。

  if(! $logindata = $this->login_model->login() ) { 
   // NO login data came back 
   //  show appropriate view

  else {
 // pass to data if you need it in the view 
  $data['logindata'] = $logindata ;
   // call and show the view  

 } 
于 2013-04-05T00:04:35.910 に答える