php 多条件搜索的连接怎么写

我现在在开发一个商城
导航的条件是
价格:全部价格 10~20 30~40 40~50
类型:全部类型 NOKIA IPHONE 摩托罗拉 三星
现在复合搜索的sql语句我是会写的
但是在选择条件的时候,我的超连接是这样写的:

价格:
全部价格
<A href="list.php?jiage=1">10~20</a>
<A href="list.php?jiage=2">30~40 </a>
<A href="list.php?jiage=3">40~50 </a>
类型:
全部类型
<A href="list.php?leixing=1">NOKIA </a>
<A href="list.php?leixing=2">IPHONE </a>
<A href="list.php?leixing=3">摩托罗拉 </a>
<A href="list.php?leixing=4">三星</a>
现在我想要的结果是 在list.php的页面
如果选择了价格 URL应该是 list.php?jiage=1
如果同时选中价格和类型 URL应该是 list.php?jiage=1&leixing=2
但是如果在list.php?jiage=1&leixing=2这个页面,重新选择类型而价格不改变选择,应该如何完成?也就是说要记录住jiage=1 改变的只是leixing这个里面的参数
请高手解答

第1个回答  2011-11-23
<?php
//把该传的条件传到php程序里:比如有三个条件price=1000~3000,name = nokia,type=2
//在php里分别接到这些条件,我定义为以下几个:
$pmax = 3000;
$pmin = 1000;
$name = 'nokia';
$type = 2;
//下面是sql语句样式:
//假如你的sql语句前半部分是
$sql = 'select * from `表名` where 1 ';
//关键看下面
if($pmax & $pmin)
{
$sql .='and price> '.$pmin.' and price < '.$pmin.' ';//注意是.=
}
if($name)
{
$sql .= 'and name like %'.$name.'% ';
}
if($type)
{
$sql .= 'and type = '.$type.'';
}
/*具体连接条件是and 还是 or 根据要求定*/
?>
第2个回答  2011-11-25
多条件提交别用a标签做,用form做个select或者是input数组提交,例如
<form method="get" action="list,php">
<select name="price">
<option>10~20</option>
<option>30~40 </option>
<option>40~50</option>
</select>

<select name="type">
<option>NOKIA</option>
<option>IPHONE</option>
<option>摩托罗拉</option>
<option>三星</option>
</select>

<input type="submit" value="确认提交" />
</form>
第3个回答  2011-11-24
看你这个写程序的方法就是哥新手,多条件查询用A标签。。。。麻烦,费事费力不讨好
如果你看过一些大型的活着开源的门户网站 你会发现,什么价格范围啊,类型啊都是动态的,在后台添加的,你这样写如果写成动态的,即使是静态的也麻烦的要死。
--------------------------------------------------------------------------------------------邪恶的分割线。
如果是我做 我会把所有条件作一个form表单, 价格范围,类型显然都是单选,那么用input标签radio类型。 选好后按提交,不要submit, 触发js的ajax函数 把数据传到后台,用数据拼sql字符串,取到数据后 在当前页面直接替换下面的商品,这样做页面无跳转,你在后台只不过做个拼字符串查询返回而已,当前页面的选择根本就不会变

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网