澳门新葡亰娱乐官网一个简单实现多条件查询的例子

接一部分是用提交之后的查果,也是程序代的主体部份:?$linkstr=mysql_connect(localhost,root,sa);mysql_select_db(cx,$linkstr);$showstr=查件:;$querystring=select
no,type,name,qty,price from orders;switch($select1){case 1:if
(!empty($no)){switch($select2){case 1:$querystring.= where
no=.$no;$showstr.=.$no.所有据;break;case 2:switch($price){case
1:$querystring.= where no=.$no. or
price50;$showstr.=.$no.或者价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. or price between 50 and
200;$showstr.=.$no.或者价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no. or
price200;$showstr.=.$no.或者价格大于200元的所有据;break;}break;case
3:switch($price){case 1:$querystring.= where no=.$no. and
price50;$showstr.=.$no.并且价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. and price between 50 and
200;$showstr.=.$no.并且价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no. and
price200;$showstr.=.$no.并且价格大于200元的所有据;break;}break;}}else{if
(!empty($type)){switch($select2){case 1:$querystring.= where
type=.$type. ;$showstr.= 型.$type.所有据;break;case
2:switch($price){case 1:$querystring.= where type=.$type. or
price50;$showstr.=型.$type.或者价格少于50元的所有据;break;case
2:$querystring.= where type=.$type. or price between 50 and
200;$showstr.=型.$type.或者价格介于50到200元的所有据;break;case
3:$querystring.= where type=.$type. or
price200;$showstr.=型.$type.或者价格大于200元的所有据;break;}break;case
3:switch($price){case 1:$querystring.= where type=.$type. and
price50;$showstr.=型.$type.并且价格少于50元的所有据;break;case
2:$querystring.= where type=.$type. and price between 50 and
200;$showstr.=型.$type.并且价格介于50到200元的所有据;break;case
3:$querystring.= where type=.$type. and
price200;$showstr.=型.$type.并且价格大于200元的所有据;break;}break;}}else{switch($price){case
1:$querystring.= where price50;$showstr.=价格少于50元的所有据;break;case
2:$querystring.= where price between 50 and
200;$showstr.=价格介于50到200元的所有据;break;case 3:$querystring.=
where price200;$showstr.=价格大于200元的所有据;break;}}}break;case
2:switch($select2){case 1:$querystring.= where no=.$no. or
type=.$type.;$showstr.=.$no.或者.$type.所有据;break;case
2:switch($price){case 1:$querystring.= where no=.$no. or type=.$type. or
price50 ;$showstr.=.$no.或者.$type.或者价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. or type=.$type. or price between 50 and
200;$showstr.=.$no.或者.$type.或者价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no.or type=.$type. or
price200;$showstr.=.$no.或者.$type.或者价格大于200元的所有据;break;}break;case
3:switch($price){case 1:$querystring.= where no=.$no. or type=.$type.
and price50
;$showstr.=.$no.或者.$type.并且价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. or type=.$type. and price between 50 and
200;$showstr.=.$no.或者.$type.并且价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no.or type=.$type. and
price200;$showstr.=.$no.或者.$type.并且价格大于200元的所有据;break;}break;}break;case
3:switch($select2){case 1:$querystring.= where no=.$no. and
type=.$type.;$showstr.=.$no.并且.$type.所有据;break;case
2:switch($price){case 1:$querystring.= where no=.$no. and type=.$type.
or price50
;$showstr.=.$no.并且.$type.或者价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. and type=.$type. or price between 50 and
200;$showstr.=.$no.并且.$type.或者价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no.and type=.$type. or
price200;$showstr.=.$no.并且.$type.或者价格大于200元的所有据;break;}break;case
3:switch($price){case 1:$querystring.= where no=.$no. and type=.$type.
and price50
;$showstr.=.$no.并且.$type.并且价格少于50元的所有据;break;case
2:$querystring.= where no=.$no. and type=.$type. and price between 50
and
200;$showstr.=.$no.并且.$type.并且价格介于50到200元的所有据;break;case
3:$querystring.= where no=.$no.and type=.$type. and
price200;$showstr.=.$no.并且.$type.并且价格大于200元的所有据;break;}break;}break;}$result=mysql_query($querystring,$linkstr);echo
p$showstr:p;if (@mysql_num_rows($result)0){while
(list($no,$type,$name,$qty,$price)=mysql_fetch_row($result)){echo
table align=center;echo tr;echo td/td;echo td$no/td;echo /tr;echo
tr;echo td/td;echo td$type/td;echo /tr;echo tr;echo td配件/td;echo
td$name/td;echo /tr;echo tr;echo td量/td;echo td$qty/td;echo /tr;echo
tr;echo td价格/td;echo td$price/td;echo /tr;echo /table;}}?

接一來這部分是實現用戶提交之后的查詢結果,也是程序代碼的主体部份:  
<?  
$linkstr=mysql_connect(“localhost”,”root”,”sa”);  
mysql_select_db(“cx”,$linkstr);  
$showstr=”查詢條件為:”;  
$querystring=”select no,type,name,qty,price from orders”;  
switch($select1)  
{  
case 1:  
if (!empty($no))  
{  
switch($select2)  
{  
case 1:  
$querystring.=” where no=”.$no;  
$showstr.=”訂單為”.$no.”所有數据”;  
break;  
case 2:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” or price<50″;  
$showstr.=”訂單為”.$no.”或者价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” or price between 50 and 200″;  
$showstr.=”訂單為”.$no.”或者价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.” or price>200″;  
$showstr.=”訂單為”.$no.”或者价格大于200元間的所有數据”;  
break;  
}  
break;  
case 3:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” and price<50″;  
$showstr.=”訂單為”.$no.”并且价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” and price between 50 and 200″;  
$showstr.=”訂單為”.$no.”并且价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.” and price>200″;  
$showstr.=”訂單為”.$no.”并且价格大于200元間的所有數据”;  
break;  
}  
break;  
}  
}  
else  
{  
if (!empty($type))  
{  
switch($select2)  
{  
case 1:  
$querystring.=” where type=””.$type.”” “;  
$showstr.=” 類型為”.$type.”所有數据”;  
break;  
case 2:  
switch($price)  
{  
case 1:  
$querystring.=” where type=””.$type.”” or price<50″;  
$showstr.=”類型為”.$type.”或者价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where type=””.$type.”” or price between 50 and 200″;  
$showstr.=”類型為”.$type.”或者价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where type=””.$type.”” or price>200″;  
$showstr.=”類型為”.$type.”或者价格大于200元間的所有數据”;  
break;  
}  
break;  
case 3:  
switch($price)  
{  
case 1:  
$querystring.=” where type=””.$type.”” and price<50″;  
$showstr.=”類型為”.$type.”并且价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where type=””.$type.”” and price between 50 and
200″;  
$showstr.=”類型為”.$type.”并且价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where type=””.$type.”” and price>200″;  
$showstr.=”類型為”.$type.”并且价格大于200元間的所有數据”;  
break;  
}  
break;  
}  
}  
else  
{  
switch($price)  
{  
case 1:  
$querystring.=” where price<50″;  
$showstr.=”价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where price between 50 and 200″;  
$showstr.=”价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where price>200″;  
$showstr.=”价格大于200元間的所有數据”;  
break;  
}  
}  
}  
break;  
case 2:  
switch($select2)  
{  
case 1:  
$querystring.=” where no=”.$no.” or type=””.$type.”””;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”所有數据”;  
break;  
case 2:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” or type=””.$type.”” or price<50
“;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”或者价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” or type=””.$type.”” or price between 50
and 200″;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”或者价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.”or type=””.$type.”” or
price>200″;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”或者价格大于200元間的所有數据”;  
break;  
}  
break;  
case 3:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” or type=””.$type.”” and price<50
“;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”并且价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” or type=””.$type.”” and price between
50 and 200″;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”并且价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.”or type=””.$type.”” and
price>200″;  
$showstr.=”訂單為”.$no.”或者類別為”.$type.”并且价格大于200元間的所有數据”;  
break;  
}  
break;  
}  
break;  
case 3:  
switch($select2)  
{  
case 1:  
$querystring.=” where no=”.$no.” and type=””.$type.”””;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”所有數据”;  
break;  
case 2:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” and type=””.$type.”” or price<50
“;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”或者价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” and type=””.$type.”” or price between
50 and 200″;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”或者价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.”and type=””.$type.”” or
price>200″;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”或者价格大于200元間的所有數据”;  
break;  
}  
break;  
case 3:  
switch($price)  
{  
case 1:  
$querystring.=” where no=”.$no.” and type=””.$type.”” and price<50
“;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”并且价格少于50元的所有數据”;  
break;  
case 2:  
$querystring.=” where no=”.$no.” and type=””.$type.”” and price between
50 and 200″;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”并且价格介于50到200元間的所有數据”;  
break;  
case 3:  
$querystring.=” where no=”.$no.”and type=””.$type.”” and
price>200″;  
$showstr.=”訂單為”.$no.”并且類別為”.$type.”并且价格大于200元間的所有數据”;  
break;  
}  
break;  
}  
break;  
}  
$result=mysql_query($querystring,$linkstr);  
echo “<p>$showstr:<p>  
“;  
if (@mysql_num_rows($result)>0)  
{  
while (list($no,$type,$name,$qty,$price)=mysql_fetch_row($result))  
{  
echo “<table align=”center”>”;  
echo “<tr>”;  
echo “<td>訂單編號</td>”;  
echo “<td>$no</td>”;  
echo “</tr>”;  
echo “<tr>”;  
echo “<td>類別</td>”;  
echo “<td>$type</td>”;  
echo “</tr>”;  
echo “<tr>”;  
echo “<td>配件</td>”;  
echo “<td>$name</td>”;  
echo “</tr>”;  
echo “<tr>”;  
echo “<td>數量</td>”;  
echo “<td>$qty</td>”;  
echo “</tr>”;  
echo “<tr>”;  
echo “<td>价格</td>”;  
echo “<td>$price</td>”;  
echo “</tr>”;  
echo “</table>”;  
}  
}  
?>  

在我们的网站设计过程中,经常会用到多条件查询,本文的源码是一个二手房屋查询的例子。在本例中,我们要实现能够通过地理位置,物业类型,房屋价格,房屋面积及信息发布日期等多个条件查询到客户所需的资料。以下是实现过程。
查询条件界面(略): 查询文件 一、生成查询语句: ?
$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; } ? 二、输出查询结果: ?php
    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 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 trtddiv
    align=’center’img
    src=’image/sorry.gif’brbr没有找到满足你条件的记录/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_page1){ 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如果在使用过程中出现什么问题,请与我联系,欢迎指正!
You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图