PHP之多条件混合筛选功能

棉花参数筛选系统
本文介绍了一个用于筛选棉花的在线系统,该系统通过多种参数如生产年度、棉花类型、颜色级别等进行精确筛选。

http://blog.youkuaiyun.com/netuser1937/article/details/54572297

 

<style type="text/css">

.search_text{ overflow:hidden; height:100%; padding-top:5px; padding-bottom:5px;}

.search_text h1{ color:#6a6a6a; font-weight:bold; float:left; font-size:14px; margin:0px; padding:0px;}

.search_text ul{ margin:0; padding:0; list-style:none; float:left; overflow:hidden; height:100%;}

.search_text li{ list-style:none; color:#6a6a6a; float:left; width:80px; padding-left:8px; padding-right:5px; white-space:nowrap}

.search_text li a{ list-style:none; color:#6a6a6a;}

.search_text li a:hover{ list-style:none; color:#fe8f01; font-weight:bold; text-decoration:underline;}

.search_text li.selected{color:#fe8f01; font-weight:bold;}

.search_text li.selected a{color:#fe8f01;}

.search_text li.selected a:hover{color:#fe8f01;}

</style>
 

<div class="search_text" id="year">

    <h1>生产年度:</h1>

    <ul>

      <li class="selected"><a href="javascript:goSort('year',0)">全部</a></li>

      <li><a href="javascript:goSort('year',1)">2015</a></li>

      <li><a href="javascript:goSort('year',2)">2014</a></li>

    </ul>

</div>

<div class="search_text" id="ctype">

    <h1>棉花类型:</h1>

    <ul>

      <li class="selected"><a href="javascript:goSort('ctype',0);">全部</a> </li>

      <li><a href="javascript:goSort('ctype',1);">手采棉</a></li>

      <li><a href="javascript:goSort('ctype',2);">机采棉</a></li>

      </li>

    </ul>

</div>

<div class="search_text" id="colors">

    <h1>颜 色 级 :</h1>

    <ul>

      <li class="selected"><a href="javascript:goSort('colors',0);">全部</a> </li>

      <li><a href="javascript:goSort('colors',1);">白棉1级</a></li>

      <li><a href="javascript:goSort('colors',2);">白棉2级</a></li>

      <li><a href="javascript:goSort('colors',3);">白棉3级</a></li>

      <li><a href="javascript:goSort('colors',4);">白棉4级</a></li>

      <li><a href="javascript:goSort('colors',5);">白棉5级</a></li>

      <li><a href="javascript:goSort('colors',6);">淡点污棉1级</a></li>

    </ul>

</div>

<div class="search_text" id="lengths">

    <h1>长 度 级 :</h1>

    <ul>

      <li class="selected"><a href="javascript:goSort('lengths',0);">全部</a> </li>

      <li><a href="javascript:goSort('lengths',1);">26CM</a></li>

      <li><a href="javascript:goSort('lengths',2);">27CM</a></li>

      <li><a href="javascript:goSort('lengths',3);">28CM</a></li>

      <li><a href="javascript:goSort('lengths',4);">29CM</a></li>

      <li><a href="javascript:goSort('lengths',5);">30CM</a></li>

      <li><a href="javascript:goSort('lengths',6);">31CM</a></li>

      <li><a href="javascript:goSort('lengths',7);">32CM</a></li>

    </ul>

</div>

<div class="search_text" id="micronaire">

    <h1>马克隆值:</h1>

    <ul>

      <li class="selected"><a href="javascript:goSort('micronaire',0);">全部</a> </li>

      <li><a href="javascript:goSort('micronaire',1);">C2</a></li>

      <li><a href="javascript:goSort('micronaire',2);">B2</a></li>

      <li><a href="javascript:goSort('micronaire',3);">A</a></li>

      <li><a href="javascript:goSort('micronaire',4);">B1</a></li>

      <li><a href="javascript:goSort('micronaire',5);">C1</a></li>

    </ul>

</div>
 

<script language="javascript">

function getQueryString(){

     var result = location.search.match(new RegExp("[\?\&][^\?\&]+=[^\?\&]+","g"));

     if(result == null){

         return "";

     }

     for(var i = 0; i < result.length; i++){

         result[i] = result[i].substring(1);

     }

     return result;

}

function goSort(name,value){

    var string_array = getQueryString();

    var oldUrl = (document.URL.indexOf("cotton.php")==-1)?document.URL+"cotton.php":document.URL;

    var newUrl;

    if(string_array.length>0)//如果已经有筛选条件

    {   var repeatField = false;

        for(var i=0;i<string_array.length;i++){

            if(!(string_array[i].indexOf(name)==-1)){

                repeatField = true;//如果有重复筛选条件,替换条件值

                newUrl = oldUrl.replace(string_array[i],name+"="+value);

            }

        }

        //如果没有重复的筛选字段

        if(repeatField == false){

            newUrl = oldUrl+"&"+name+"="+value;

        }

    }else{//如果还没有筛选条件

        newUrl = oldUrl+"?"+name+"="+value;

    }

    //跳转

    window.location = newUrl;

}

function setSelected(name,value){

    var all_li = $("#"+name).find("li");

    //清除所有li标签的selected类

    all_li.each(function(){

        $(this).removeClass("selected");

    });

    //为选中的li增加selected类

    all_li.eq(value).addClass("selected");

}

$(document).ready(function(){

    var string_array = getQueryString();

    for(var i=0;i<string_array.length;i++){

        var tempArr = string_array[i].split("=");

        setSelected(tempArr[0],tempArr[1]);//设置选中的筛选条件

    }

});

</script> 
 

<?php

/**

*加入搜索条件

*/

$where ="1";

$year_array = array(1=>'2015',2=>'2014');

$ctype_array = array(1=>'0',2=>'1');

$colors_array = array(1=>'0',2=>'1',3=>'2',4=>'3',5=>'4',6=>'5');

$lengths_array = array(1=>'0',2=>'1',3=>'2',4=>'3',5=>'4',6=>'5',7=>'6');

$micronaire_array = array(1=>'0',2=>'1',3=>'2',4=>'3',5=>'4');
     

if(isset($year)&&($year!=0)) $where .= " AND year=".$year_array[$year];

if(isset($ctype)&&($ctype!=0)) $where .= " AND ctype=".$ctype_array[$ctype];

if(isset($colors)&&($colors!=0)) $where .= " AND colors=".$colors_array[$colors];

if(isset($lengths)&&($lengths!=0)) $where .= " AND lengths=".$lengths_array[$lengths];

if(isset($micronaire)&&($micronaire!=0)) $where .= " AND micronaire=".$micronaire_array[$micronaire];

/**

*加入搜索条件

*/

?>
PHP中获取到$where条件,加入到SQL语句中获取数据列表。

转载于:https://my.oschina.net/yonghan/blog/1550266

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值