求解:php商品条件筛选功能你是怎么做出来的?

求解:php商品条件筛选功能你是怎么做出来的?

分享| 2013-09-25 13:43 chenhang607 | 浏览 2756 次

资源共享

求思路或者方法,最好能有些代码

2013-09-25 14:14 提问者采纳

php按条件筛选商品的功能,还是比较简单的。其实就是根据不同的条件组成SQL查询条件,从数据库里查出不同的商品出来。举个例子:用户可以按价格范围、按品牌、按商品名称这几项来综合查询。那么,在用户选择了上面这些查询条件后(可能这3个条件都设置了,也可能只设置了其中2个),提交到服务器端,服务端程序收到用户的查询条件,开始组装SQL查询语句,最后执行组装好的SQL查询语句,返回结果给用户。

代码举例:用户提交的查询:price=‘0-1000‘; //按价格范围0-1000元查询

brandid=20;  //要求品牌必须是ID号为20的这个(假设这个ID号为20的品牌,名字叫”西部数据")productname=‘绿盘‘; //商品名称只设置了2个字以做模糊查询

用户点了查询按钮后,根据程序的不同,可能是get方式也可能是post方式发送查询请求,现假设为post方式。

然后在服务器端程序中,收到用户的查询请求:$price=$_POST[‘price‘];$price_arr=explode(‘-‘,$price); //这里是把价格范围按-号拆散成数组,方便在组装SQL查询语句时用。

$brandid=$_POST[‘brandid‘];$productname=$_POST[‘productname‘];

当然,上面的数据获取后,还要进行相应的安全方面的检查与处理,这里先略过。

接下来,开始组装SQL查询语句:

$sqlexp=‘‘;//下面开始组根据用户设置的查询条件进行SQL查询条件的组装

if(!empty($price)) {    $sqlexp.=‘ and (price>=‘.$price_arr[0].‘ and price<=‘.$price_arr[1];

}if(!empty($brandid)) {   $sqlexp.=‘ and brandid=‘.$brandid;}if(!empty($productname)) {   $sqlexp.=" and instr(productname,‘$productname‘)>0";}

//下面执行SQL查询

$result=mysql_query("select * from product where state=1 ".$sqlexp);

在上面的查询完成后,把查询结果返回给用户,就完成了用户按条件筛选商品的功能。

追问:

嗯,后面取地址栏参数,拼接where条件,这个都好弄,就不是不知道,怎么在前端页面查询条件上面a链接构造地址。

追答:

在前端页面中,一般是用form表单,而不是用A链接。<form name="search_form" method="post" action="search.php">价格范围:<input type="text" name="price" />品牌:<select name="brandid">          <option value="">请选择</option>          <option value="1">希捷</option>          <option value="20">西部数据</option>          <option value="21">日立</option>          </select>商品名称:<input type="text" name="productname" /><input type="submit" name="searchbtn" value="开始查询" />
时间: 2024-11-08 18:56:40

求解:php商品条件筛选功能你是怎么做出来的?的相关文章

织梦CMS实现多条件筛选功能

用织梦实现筛选的功能,其实主要就是运用到了织梦的高级搜索功能,然后用ajax去post替换掉本来的结果就可以了. 其实筛选的话,主要有两个问题需要解决,一个是前台的筛选实现,一个是后台根据前台的点击,反馈出相应的结果. 于是在网上搜索了N多的资料了之后,先实现前台的功能,就是你点了之后会有一个筛选的效果出来,当然,也只是一个效果.具体可以参照:jquery仿京东筛选效果.下面就一步一步用织梦来实现这样的功能. 首先我们先在后台自定义模型(自定义模型都不会的同学,可以直接去面壁思过了) 看到参照网

平台中多条件筛选功能

平台中网格部件有一个筛选行,能实现在筛选行中对各个字段的内容输入值进行筛选数据:那么我们不要这种筛选方式,要下图中所示效果又该如何做呢?要实现的效果: 实现代码: 原文地址:http://bbs.delit.cn/thread-1107-1-1.html 转载请注明出处: 撰写人:度量科技http://www.delit.cn

Ecshop的商品筛选功能实现分析之一(主要对category.php进行分析)

一.首先,说明一下为什么要对category.php文件进行分析. (1)原因如下: ①个人对商城类商品筛选功能的实现比较好奇: ②对商城中关于商品的数据表设计比较感兴趣.(该功能涉及到与数据库的交互,而且与数据库中数据表的设计好坏有一定的联系): ③多条件(属性)筛选功能在现今的很多网站都需要用到,很广泛(如:一般商城网.团购网.房产网.信息分类网站等等). (2)希望达到的目的是: ①能够对多条件筛选功能有一个初步的认识.(起码自己做,也能够快速实现吧): ②对多条件筛选的实现中,数据库该如

iOS: 悬浮的条件筛选框使用二

一.介绍: 在前面已经介绍了一种条件悬浮框,使用的是tableView的Plain分组样式实现的,因为这是tableView本身就具备的功能,分组悬浮效果.这次我来介绍第二种更加简单的方法,采用两个ScrollView来实现. 二.实现技术: (1)两个ScrollView,一个是左右滚动,成为内容视图,另一个是上下滚动,作为容器视图: (2) 创建头视图,头视图中有banner图和条件筛选框,标记banner图的高: (3)合理设置上下滚动的容器视图的frame,它承载头视图和内容视图,不过需

pandas的筛选功能,跟excel的筛选功能类似,但是功能更强大。

Select rows from a DataFrame based on values in a column -pandas 筛选 https://stackoverflow.com/questions/17071871/select-rows-from-a-dataframe-based-on-values-in-a-column-in-pandas pandas的筛选功能,跟excel的筛选功能类似,但是功能更强大. 在SQL数据中, 我们可以用这样的语句: select * from

关于实现数据查询条件输入功能的一个低级错误

我们常常要实现检索数据的功能.复杂的查询条件输入,最好有辅助输入功能,能帮助使用者更轻松的完成查询条件输入.最近我们见到一个查询条件输入功能实现的时候犯的一个低级错误,觉得在新手中可能会典型,故拿出来说一下. 有个查询基站监控历史数据的功能,要查基站的历史数据,先得选择几个基站.第一个版本查询条件很简单,只需按站名或地区搜索基站,在结果集中选中一个或多个站,再输入其他查询条件.第二个版本,客户要求增加基站的基础信息作为查询条件,比如郊区还是市区,墙体材料等等,这些条件影响基站的冷却所需的能耗.这

关于进行条件筛选的SQL关键字的一点理解

概述 一般能够用于条件筛选的有三种: ON: 联结(join)筛选 WHERE: 一般条件筛选 HAVING: 分组后的条件筛选 ON JOIN – ON 语句的执行顺序: 例句: SELECT * FROM A LEFT JOIN B ON A.ID = B.ID AND A<>0 WHERE A.name = 'x' 注意在作on 连接后 的and 子句 和where 子句 . 他们有什么不同? 逻辑上解释:(不考虑执行计划中执行步骤和作嵌套连接等具体方式,这里只讨论如何思考逻辑上的步骤)

iOS: 悬浮的条件筛选下拉框的使用

1.介绍 app中条件筛选视图是很常用的功能,一般它搭配着tableView的表头悬浮滚动使用,点击按钮时,就会弹出下拉框显示条件,选择一个条件后,下拉框自动隐藏. 2.效果图如下 从中间点击弹出,然后滚动tableView随着移动,到顶部就悬浮着,下拉时仍然跟着滚动,一直滚动初始位置就停止...   3.实现方式 首先:采用分组的tableView,不过类型必须选择为Plain,这种类型本身就带悬浮效果.如果用Group类型,就没有悬浮效果: //设置tableView风格 -(instanc

iwebshop框架中后台筛选功能的思路整理

本人在实际开发中,根据产品经理需求,在iwebshop框架原有的后台订单筛选功能里增加商户名称模糊筛选! 开发思路:首先要明白筛选的数据在数据库中的位置,对要筛选的字段进行模糊查询! 开发主要注意:因为iwebshop后台订单筛选功能是写在封装好的一个类下面 order/order_class.php里面,所以sql查询后的遍历和sql本身的条件,一定要注意书写正确! 实际开发书写代码思路讲解: if(isset($search['name']) && isset($search['key