php多条件复合搜索怎么做到?

这个用脚本来做更简单些,不用分多次往a.php传参。传一次就行了。
<!--HTML START-->
<!--函数参数推荐写数字,既对应“摩托罗拉”的id,但由于这里你没给出,我索性写上汉字了-->
<a href= javescript:set_made( 摩托罗拉 ) >摩托罗拉</a>
<a href= javescript:set_made( 诺基亚 ) >诺基亚</a>
<a href= javescript:set_made( 苹果 ) >苹果</a>

<a href= javescript:set_price( 1000-2000 ) >1000-2000元</a>
<a href= javescript:set_price( 2000-3000 ) >2000-3000元</a>
<a href= javescript:set_price( 3000-5000 ) >3000-5000元</a>

<a href= javescript:set_os( android系统 ) >android系统</a>
<a href= javescript:set_os( 塞班系统 ) >塞班系统</a>
<a href= javescript:set_os( 苹果系统 ) >苹果系统</a>
<!--这里的表单隐藏域,只显示一个搜索按钮-->
<form action= method= post >
<input id= made name= made type= hidden value= <?php echo $_POST[ made ] ?> />
<input id= price name= price type= hidden value= <?php echo $_POST[ price ] ?> />
<input id= os name= os type= hidden value= <?php echo $_POST[ os ] ?> />
<input type= submit value = 搜索 />
</form>
<!--HTML END-->

<!--SCRIPT START-->
<script>
/* @Tips : 这段JS代码可以放到单独的JS文件中去,也可以直接写到head里,随你。
* @Purpose : 这里几个函数分别是把隐藏域中的made、price、os设置成对应的值,点击链接时触发
* @Method : set_made,set_price,set_os
* @Param : str 字符串或者数字,请根据你的需要来决定
* @Return : NULL
*/
function set_made (str) {
document.getElementById( made ).value = str;
}
function set_price (str) {
document.getElementById( price ).value = str;
}
function set_os (str) {
document.getElementById( os ).value = str;
}
</script>
<!--SCRIPT END-->

至于函数参数里你是要添ID 还是添汉字,自己改就行了。
还有你说的那个变色的问题,也不难做,但代码有点长,我懒得写了……
就跟你说一下方法:
首先你要给这几个<a>标签做个CSS类名,比如<a class= test >,这个test可以不写,主要是用来区别页面其它的<a>标签。当然不写也没关系,只是会让JS脚本稍慢一点。
然后用document.getElementByTageName( a ),获取页面中所有的<a>标签。做个循环,把class不是test的过滤掉,再用他们的innerHTML属性与made、price、os的value属性分别比较,如果是一样的话,就改变它的背景颜色。

如果不用JS的话,可以用GET变量传入
例:c.php为显示文件,当点击地区,则在文件后加入地区代码
c.php?dq=北京
这样获取地区的值进行查询,选择地区后,再点价格URL则变为:
c.php?dq=北京&jg=5000
这样再加入第二个条件价格查询就好了。
如果有第三个条件 则以此类推。

或者:

1
2
3
4
5
6
7
$where= ;
foreach($_GETas$k=>$v) if(substr($k,0,3)== se_ &&!empty($v)) $where.= ` .substr($k,3). `= {$v} and ;
$query= $db->query( select * from table where .rtrim($where, and ));
$data= $db->getAll($query);
URL: xx.php?se_name=xxx&se_tasdfa=ddd&se_xxx=xxxx
给你举个例子吧:
<a href= a.php?shoptype=摩托罗拉&prce=1000,2000 >摩托罗拉</a>
提醒一下“shoptype=0” 最好是不要传中文 改用数字(在a.php 文件给以数组shop[0]= 摩托罗拉 )
这样做好一些
分少,js,php你都不懂.不好教
通过传参实现