首页 > php开发 > php实现多级分类筛选程序代码

php实现多级分类筛选程序代码

现在这种多选择功能在很多网站都有,如现在很多电商网站都有N个条件选择了,下面小编为各位介绍一个简单的多级分类筛选实现方法,主要注意这边有一个 $$这是变量的变量,以后估计会常用这个做开发,代码如下:

<?php 
$conditions = array('price','color','metal');//要进行筛选的字段放在这里 
$price = $color = $metal='';//先给需要筛选的字段赋空值,这些值将输出到页面的hidden fileds 中 
//以下循环给已经进行的筛选赋值,以便能够在下一次筛选中保留 
foreach($conditions as $value){ 
if(isset($_GET[$value])){  
$$value = $_GET[$value]; 
} 
} 
//以下是演示输出$_GET数据 
echo '<pre>'; 
print_r($_GET); 
echo '</pre>'; 
<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>分类筛选演示</title> 
<style type="text/css"> 
body{font-size:14px;font-family:Tahoma,"宋体"} 
</style> 
<script type="text/javascript"> 
function Filter(a,b){ 
var $ = function(e){return document.getElementById(e);} 
var ipts = $('filterForm').getElementsByTagName('input'),result=[]; 
for(var i=0,l=ipts.length;i<l;i++){ 
if(ipts[i].getAttribute('to')=='filter'){ 
   result.push(ipts[i]); 
   } 
} 
   if($(a)){ 
$(a).value = b; 
for(var j=0,len=result.length;j<len;j++){ 
   if(result[j].value==''){ 
   result[j].parentNode.removeChild(result[j]); 
   } 
   } 
document.forms['filterForm'].submit(); 
} 
return false; 
} 
</script> 
</head> 
<body> 
<form id="filterForm" action="test.php" method="get"> 
<!-- 
form的id 要和程序里统一 
为避免与其他使用的隐藏域冲突,添加了to属性 
以下是筛选字段隐藏域 
需要筛选的隐藏域需要加 to 属性 
--> 
<input to="filter" type="hidden" id="price" name="price" value="<?=$price" /> 
<input to="filter" type="hidden" id="color" name="color" value="<?=$color" /> 
<input to="filter" type="hidden" id="metal" name="metal" value="<?=$metal" /> 
</form> 
<!-- 
要筛选的属性可以由程序生成,注意规律! 
--> 
价格:<a href="javascript:Filter('price','');">不限</a> 
<a href="javascript:Filter('price','100-1000');">100-1000</a> 
  <a href="javascript:Filter('price','1001-2000');">1001-2000</a> 
 <a href="javascript:Filter('price','2001-3000');">2001-3000</a><br/> 
颜色:<a href="javascript:Filter('color','红色');">红色</a> 
  <a href="javascript:Filter('color','蓝色');">蓝色</a><br /> 
材质:<a href="javascript:Filter('metal','纯金');">纯金</a> 
  <a href="javascript:Filter('metal','纯银');">纯银</a><br /> 
</body> 
</html>


本文地址:http://www.phprm.com/develop/fs8978.html

转载随意,但请附上文章地址:-)

标签:php多级分类 php分类筛选

相关文章

发表留言