簡體   English   中英

Code Igniter Multiple where子句不起作用

[英]Code Igniter multiple where clauses are not working

當頁面加載性別= 3,單擊母按鈕性別= 1以及單擊雄按鈕性別= 2時,代碼點火器模型返回json_encode結果。 現在,我想在if條件中添加另一個where語句。 看看性別是否為3(如果有條件)。

 function get_data_all($gender, $age_min, $age_max) { $counter = 0; $this->db->select('*'); if($gender == 1){ $this->db->where('gender', 'F'); //working $counter++; } elseif($gender == 2){ $this->db->where('gender', 'M'); //working $counter++; } elseif($gender == 3){ $names = array('F', 'M'); $this->db->where_in('gender', $names); //working $this->db->where('age>=', 12); //not working $this->db->where('age<=', 18); //not working $counter++; } else{ redirect(base_url()); } $query = $this->db->get('sudent_details'); if (($query->num_rows() > 0) && ($counter > 0)){ echo(json_encode($query->result())); $counter = 0; } else { return false; } } 

在列名和比較運算符中添加空格

$this->db->where('age >= ', 12);
$this->db->where('age <= ', 18);

您需要替換以下幾行:

$this->db->where('age>=', 12);  //not working
$this->db->where('age<=', 18);  //not working  

至:

$this->db->where('age','>=',12);  
$this->db->where('age','<=',18);

要么:

$this->db->where('age >= 12',FASLE,FALSE);  
$this->db->where('age <= 18',FASLE,FALSE);

要么:

$this->db->where('age>=', 12,FALSE);
$this->db->where('age<=', 18,FALSE);

它應該工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM