|
发表于 2014-12-8 11:29:29
|
显示全部楼层
本帖最后由 Closer 于 2014-12-9 13:18 编辑
四個項目分別存去一個陣列
$z = array($a, $b, $c, $d);
$c 和 $d 內又個別有陣列 (大於/小於, 兩個範圍值)
再將這個 $z 送進 model 判斷,並執行四次 for 迴圈
(以下只是個概念,我沒有測試過)
for($x=0;$x<=3;$x++){
switch($x){
case 0: $this->db->like('區域',$z[0]); break;
case 1: $this->db->like('類別',$z[1]); break;
case 2:
if(isset($z[2][1]) && isset($z[2][2])){
$this->db->where('租金 >',$z[2][1]);
$this->db->where('租金 <',$z[2][2]);
}elseif(isset($z[2][1])){
if($z[2][0]==">"){
$this->db->where('租金 >',$z[2][1]);
}else{
$this->db->where('租金 <',$z[2][1]);
}
}
break;
case 3:
if(isset($z[3][1]) && isset($z[3][2])){
$this->db->where('面積 >',$z[3][1]);
$this->db->where('面積 <',$z[3][2]);
}elseif(isset($z[3][1])){
if($z[3][0]==">"){
$this->db->where('面積 >',$z[3][1]);
}else{
$this->db->where('面積 <',$z[3][1]);
}
}
break;
}
}
$query = $this->db->get(’search’);
if($query->num_rows() > 0){
return $query->result_array();
}
|
|