PHP之多条件混合筛选功能的实现方法


Posted in PHP onOctober 09, 2019

如下所示:

PHP之多条件混合筛选功能的实现方法

<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)" rel="external nofollow" >全部</a></li>
   <li><a href="javascript:goSort('year',1)" rel="external nofollow" >2015</a></li>
   <li><a href="javascript:goSort('year',2)" rel="external nofollow" >2014</a></li>
  </ul>
</div>
<div class="search_text" id="ctype">
  <h1>棉花类型:</h1>
  <ul>
   <li class="selected"><a href="javascript:goSort('ctype',0);" rel="external nofollow" >全部</a> </li>
   <li><a href="javascript:goSort('ctype',1);" rel="external nofollow" >手采棉</a></li>
   <li><a href="javascript:goSort('ctype',2);" rel="external nofollow" >机采棉</a></li>
   </li>
  </ul>
</div>
<div class="search_text" id="colors">
  <h1>颜 色 级 :</h1>
  <ul>
   <li class="selected"><a href="javascript:goSort('colors',0);" rel="external nofollow" >全部</a> </li>
   <li><a href="javascript:goSort('colors',1);" rel="external nofollow" >白棉1级</a></li>
   <li><a href="javascript:goSort('colors',2);" rel="external nofollow" >白棉2级</a></li>
   <li><a href="javascript:goSort('colors',3);" rel="external nofollow" >白棉3级</a></li>
   <li><a href="javascript:goSort('colors',4);" rel="external nofollow" >白棉4级</a></li>
   <li><a href="javascript:goSort('colors',5);" rel="external nofollow" >白棉5级</a></li>
   <li><a href="javascript:goSort('colors',6);" rel="external nofollow" >淡点污棉1级</a></li>
  </ul>
</div>
<div class="search_text" id="lengths">
  <h1>长 度 级 :</h1>
  <ul>
   <li class="selected"><a href="javascript:goSort('lengths',0);" rel="external nofollow" >全部</a> </li>
   <li><a href="javascript:goSort('lengths',1);" rel="external nofollow" >26CM</a></li>
   <li><a href="javascript:goSort('lengths',2);" rel="external nofollow" >27CM</a></li>
   <li><a href="javascript:goSort('lengths',3);" rel="external nofollow" >28CM</a></li>
   <li><a href="javascript:goSort('lengths',4);" rel="external nofollow" >29CM</a></li>
   <li><a href="javascript:goSort('lengths',5);" rel="external nofollow" >30CM</a></li>
   <li><a href="javascript:goSort('lengths',6);" rel="external nofollow" >31CM</a></li>
   <li><a href="javascript:goSort('lengths',7);" rel="external nofollow" >32CM</a></li>
  </ul>
</div>
<div class="search_text" id="micronaire">
  <h1>马克隆值:</h1>
  <ul>
   <li class="selected"><a href="javascript:goSort('micronaire',0);" rel="external nofollow" >全部</a> </li>
   <li><a href="javascript:goSort('micronaire',1);" rel="external nofollow" >C2</a></li>
   <li><a href="javascript:goSort('micronaire',2);" rel="external nofollow" >B2</a></li>
   <li><a href="javascript:goSort('micronaire',3);" rel="external nofollow" >A</a></li>
   <li><a href="javascript:goSort('micronaire',4);" rel="external nofollow" >B1</a></li>
   <li><a href="javascript:goSort('micronaire',5);" rel="external nofollow" >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语句中获取数据列表。

以上这篇PHP之多条件混合筛选功能的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php学习 字符串课件
Jun 15 PHP
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
Jun 03 PHP
php curl基本操作详解
Jul 23 PHP
分享下页面关键字抓取components.arrow.com站点代码
Jan 30 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
PHP如何实现Unicode和Utf-8编码相互转换
Jul 29 PHP
PHP5.3新特性小结
Feb 14 PHP
Yii框架实现记录日志到自定义文件的方法
May 23 PHP
thinkPHP框架中执行原生SQL语句的方法
Oct 25 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
Jun 14 PHP
PHP中关于php.ini参数优化详解
Feb 28 PHP
Laravel 修改验证异常的响应格式实例代码详解
May 25 PHP
laravel实现按月或天或小时统计mysql数据的方法
Oct 09 #PHP
laravel5.5添加echarts实现画图功能的方法
Oct 09 #PHP
使用laravel和ECharts实现折线图效果的例子
Oct 09 #PHP
Laravel统计一段时间间隔的数据方法
Oct 09 #PHP
浅谈PHP5.6 与 PHP7.0 区别
Oct 09 #PHP
laravel按天、按小时,查询数据的实例
Oct 09 #PHP
laravel多条件查询方法(and,or嵌套查询)
Oct 09 #PHP
You might like
php去除换行(回车换行)的三种方法
2014/03/26 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
laravel 实现向公共模板中传值 (view composer)
2019/10/22 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
JS实现的论坛Ajax打分效果完整实例
2015/10/31 Javascript
微信小程序 this和that详解及简单实例
2017/02/13 Javascript
angular.js指令中的controller、compile与link函数的不同之处
2017/05/10 Javascript
基于BootStrap实现简洁注册界面
2017/07/20 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
React如何将组件渲染到指定DOM节点详解
2017/09/08 Javascript
Vue 实现从小到大的横向滑动效果详解
2019/10/16 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
Python random模块常用方法
2014/11/03 Python
使用Python装饰器在Django框架下去除冗余代码的教程
2015/04/16 Python
Python模拟登陆实现代码
2017/06/14 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
Python3计算三角形的面积代码
2017/12/18 Python
Python之pandas读写文件乱码的解决方法
2018/04/20 Python
基于python3实现socket文件传输和校验
2018/07/28 Python
python框架中flask知识点总结
2018/08/17 Python
django DRF图片路径问题的解决方法
2018/09/10 Python
django多种支付、并发订单处理实例代码
2019/12/13 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
django实现后台显示媒体文件
2020/04/07 Python
css 元素选择器的简单实例
2016/05/23 HTML / CSS
iRobot官网:改变生活的家用机器人品牌
2016/09/20 全球购物
小狗电器官方商城:中国高端吸尘器品牌
2017/03/29 全球购物
柏林通行证:Berlin Pass
2018/04/11 全球购物
静态成员和非静态成员的区别
2012/05/12 面试题
学生会竞选演讲稿怎么写
2014/08/26 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
2014年为民办实事工作总结
2014/12/20 职场文书
2015年世界无烟日演讲稿
2015/03/18 职场文书
2015年高校保卫处工作总结
2015/07/23 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python