2017-06-30 51 views
-1

enter image description here顯示空結果,而我只想要在codeigniter

以下是我的代碼。

sent_invitation表中有3行user_id=11
從那裏我試圖獲得所有三行的移動號碼根據user_id
所有3行的mobile_number是不同的。
創建後mobile_numbersent_invitation表。
我比較mobile_number與mobile_number用戶表。
我看到3個mobile_numbers中的2個數字在用戶表中。
我試圖顯示mobile_numbers目前在用戶表中,即2
bt問題是,我的代碼顯示3個數組。
2與當前行(作爲數組)。
並顯示第三排爲空,我硝基甲苯想
我只想mobile_numbers出現在用戶表即2

+5

不使用IMG ..post your text code .. – scaisEdge

+0

首先,您需要了解CI數據庫和查詢生成器。 –

+0

您是否聽說過「CI查詢生成器」? –

回答

0

這裏是您的解決方案:

$this->db->select('user_id,name,mobile_number'); 
    $this->db->from('users'); 
    $this->db->join('sent_invitation','sent_invitation.mobile_number=users.mobile_number'); 
    $this->db->where('users.user_id',$user_id); 
    $query = $this->db->get(); 
    return ($query->num_rows() > 0)?$query->result_array():FALSE; 
0

如果我正確你只是想了解你結果是與你的用戶表匹配 - 在這種情況下,你可以嘗試一個簡單的加入這樣的

但是 - 因爲你使用舊的功能,如mysql_query它表明你也坐在一箇舊的PHP版本 - 所以我沒有牛逼確保您使用的CI版本 -

public function invitation_result() 
{ 
    $this->load->database(); 
    $user_id =$this->input->get("user_id"); 
    $query = $this->db 
     ->select("*") 
     ->from("sent_invitations AS si") 
     ->join("users AS u","u.mobile_number = si.mobile_number") 
     ->where("user_id", $user_id) 
     ->get(); 

    $arrUsers = []; 
    if ($query->num_rows() > 0) 
    { 
     foreach($query->result() AS $row) 
     { 
      $arrUsers[] = array("user_id" => $row->user_id, "name" => $row->name, "mobile_number" => $row->mobile_number); 
     } 
    } 
    return $arrUsers; 
} 

PS:下次你應該粘貼代碼,而不是上傳圖片的 - 它很粗魯簡單地忽略基本規則...