在我们的网站设计过程中,经常会用到多条件查询,本文的源码是一个二手房屋查询的例子。在本例中,我们要实现能够通过地理位置,物业类型,房屋价格,房屋面积及信息发布日期等多个条件查询到客户所需的资料。
查询文件(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!="不限"){ Chinazcom 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; } ?> |
二、输出查询结果: WwwChinazcom
| 以下为引用的内容: <?php rows=mysql_num_rows(result); if(rows!=0){ while(myrow=mysql_fetch_array(result)){ echo "<tr>"; echo "<td width=15 height=12><img src=image/home2.gif width=14 height=14></td>"; echo "<td width=540 height=12>myrow[id] myrow[tradetype] myrow[address] myrow[wuye](myrow[housetype])<font style=font-size:9pt>[myrow[date]]</font>"; echo "</td>"; echo "<td width=75 height=12><a href=view_d.php?code=myrow[code] target=_blank>详细内容</a></td>"; echo "</tr>"; } } else echo "<tr><td><div align=center><img src=image/sorry.gif><br><br>没有找到满足你条件的记录</div></td></tr>"; } prev_page=page-1; next_page=page+1; echo "<div align=center>"; echo " 第".page."/".page_count."页 "; if (page<=1){ echo "|第一页|"; } else{ echo "<a href=PATH_INFO?page=1>|第一页|</a>"; } echo " "; if (prev_page<1){ echo "|上一页|"; } else{ echo "<a href=PATH_INFO?page=prev_page>|上一页|</a>"; } echo " "; if (next_page>page_count){ echo "|下一页|"; } else{ echo "<a href=PATH_INFO?page=next_page>|下一页|</a>"; } echo " "; if (page>=page_count){ echo "|最后一页|"; } else{ echo "<a href=PATH_INFO?page=page_count>|最后一页|</a>"; } echo "</div>"; } else{ echo "<p align=center>现在还没有房屋租赁信息!</p>"; } echo "<hr width="100%" size="1">"; ?> </table> |