一個簡單實現多條件查詢的例子

來源:互聯網
上載者:User
關鍵字 一個簡單實現多條件查詢的例子
在我們的網站設計過程中,經常會用到多條件查詢,本文的源碼是一個二手房屋查詢的例子。在本例中,我們要實現能夠通過地理位置,物業類型,房屋價格,房屋面積及資訊發布日期等多個條件查詢到客戶所需的資料。以下是實現過程。
查詢條件介面(略):
查詢檔案(search.php)
一、產生查詢語句:
$conn=MySQL_connect("localhost","root","");
$db=mysql_select_db("lingyun");
$query="select * from message where tradetype='".$tradetype."'"; //交易類型,如出租,出售
$SQL=$SQL . "wuye='" . $wuye . "'";
if($housetype!="不限"){
$query.=" && housetype='".$housetype."'"; //房屋類型,如二室一廳,三室二廳
}
if($degree!="不限"){
$query.=" && degree='".$degree."'"; //新舊程度
}
if($wuye!="不限"){
$query.=" && wuye='".$wuye."'";  //物業類型 如房屋,商鋪
}
if($PRice2!=""){
switch($price1){
case "大於":
$query.=" && price>'".$price2."'";  //價格
break;
case "等於":
$query.=" && price='".$price2."'";
break;
case "小於":
$query.=" && price<'".$price2."'";
break;
}
}
if($area2!=""){
switch($area1){
case "大於":
$query.=" && area>'".$area2."'"; //面積
break;
case "等於":
$query.=" && area='".$area2."'";
break;
case "小於":
$query.=" && area<'".$area2."'";
break;
}
}
switch($pubdate){          //發布日期
case "本星期內":
$query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=7";
break;
case "一個月內":
$query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=30";
break;
case "三個月內":
$query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=91";
break;
case "六個月內":
$query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=183";
break;
}
if($address!=""){
$query.=" && address like '%$address%'"; //地址
}
if(!$page){
$page=1;
}
?>

二、輸出查詢結果:
   if ($page){
   $page_size=20;
   $result=mysql_query($query);
   #$message_count=mysql_result($result,0,"total");
   $message_count=10;
   $page_count=ceil($message_count/$page_size);
   $offset=($page-1)*$page_size;
   $query=$query." order by date desc limit $offset, $page_size";
   $result=mysql_query($query);
   if($result){
   $rows=mysql_num_rows($result);
   if($rows!=0){
   while($myrow=mysql_fetch_array($result)){
   echo "";
   echo "";
   echo "$myrow[id] $myrow[tradetype] $myrow[address] $myrow[wuye]($myrow[housetype])[$myrow[date]]";
   echo "";
   echo "詳細內容";
   echo "";
     }
    }
   else echo "

沒有找到滿足你條件的記錄";
   }

     $prev_page=$page-1;
     $next_page=$page+1;
     echo "";
     echo " 第".$page."/".$page_count."頁 ";
     if ($page<=1){
       echo "|第一頁|";
      }
     else{
       echo "|第一頁|";
       }
     echo " ";
     if ($prev_page<1){
       echo "|上一頁|";
      }
     else{
       echo "|上一頁|";
       }
     echo " ";
     if ($next_page>$page_count){
       echo "|下一頁|";
       }
     else{
       echo "|下一頁|";
       }
     echo " ";
     if ($page>=$page_count){
       echo "|最後一頁|";
        }
     else{
       echo "|最後一頁|";
       }
    echo "";
  }
   else{
     echo "

現在還沒有房屋租賃資訊!

";
    }
  echo "";
 ?>
    
    
如果在使用過程中出現什麼問題,請與我聯絡(yk_lingyun@21cn.com),歡迎指正!


【本文著作權歸作者與奧索網共同擁有,如需轉載,請註明作者及出處】  
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.