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

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="开始查询" />

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

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

    求解:php商品条件筛选功能你是怎么做出来的? 2013-09-25 13:43 chenhang607 | 浏览 2756 次 资源共享 求思路或者方法,最好能有些代码 2013-09-25 14: ...

  2. C#&JQ仿网上商城商品条件筛选功能

    1.后台绑定: 一种案例: 根据第一级显示第二级,并带有每个二级的“全部”功能: #region 绑定区域 #region 绑定一级区域 ) <= ? : (PageIndex - )) + , ...

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

    用织梦实现筛选的功能,其实主要就是运用到了织梦的高级搜索功能,然后用ajax去post替换掉本来的结果就可以了. 其实筛选的话,主要有两个问题需要解决,一个是前台的筛选实现,一个是后台根据前台的点击, ...

  4. mxonline实战8,机构列表分页功能,以及按条件筛选功能

    对应github地址:列表分页和按条件筛选     一. 列表分页   1. pip install django-pure-pagination   2. settings.py中 install ...

  5. 【PHP开源产品】Ecshop的商品筛选功能实现分析之一

    一.首先,说明一下为什么要对category.php文件进行分析. 原因如下: ①个人对商城类商品筛选功能的实现比较好奇: ②对商城中关于商品的数据表设计比较感兴趣.(该功能涉及到与数据库的交互,而且 ...

  6. HTML多条件筛选商品

    今天同事接到一个类似于JD的按条件筛选商品的功能,同事把这个锅出色的甩给了我,俺就勉为其难的解决了这个问题. 首先我们来理清一下思路: 1.条件切换时,tab选项卡肯定要跟着切换,而且只是一个大类条件 ...

  7. PHP多条件分类列表筛选功能开发实例

    PHP多条件分类列表筛选功能开发实例,前后台一起实现 后台对接可以拼接sql语句,PHP通过表单值隐藏值筛选,常用又实用! 表单筛选核心函数 function Filter(a, b) { var $ ...

  8. JS前端数据多条件筛选(商品搜索)

    有时候也会需要在前端进行数据筛选,增强交互体验.当数据可用的筛选条件较多时,把逻辑写死会给后期维护带来很大麻烦.下面是我自己写的一个简单的筛选器,筛选条件可以根据数据包含的字段动态设置. 仿照京东的筛 ...

  9. ecshop添加商品筛选功能

    ecshop商品属性一直是使用问题的难点,而“属性筛选”更是ecshop属性中的难点,那么下面来详细说明一下 属性筛选功能 第一,属性筛选的特点: 属性筛选必须是分类页才会显示,列出所有商品的唯一属性 ...

随机推荐

  1. Python之argv简明详解

    今日看到argv 度娘查找一番,基本都是转载的同一篇文章,总体字数不少但看了之后感觉还是稀里糊涂,自己尝试了一番简单总结如下 当我们需要在命令行执行脚本并需要在执行脚本的同时传入参数给脚本使用,那我们 ...

  2. Python游戏编程(Pygame)

    安装Pygame pip install pygame C:\Users> pip install pygame Collecting pygame Downloading https://fi ...

  3. easyui 布局之window和panel一起使用时,拉动window宽高时panel不跟随一起变化

    项目开发中布局是每一个组件都由最外层的window和内部的至少一个panel组成,其他的细小组件再依次放到panel中. 问题:当拉动外部的window时我们希望内部的panel的宽高也跟着变化,但是 ...

  4. ActiveSync的Settings命令

           在[MS-ASCMD]中,Settings命令的功能这样定义的:        The Settings command also sends device information to ...

  5. SQL Server 对字符进行排序(数字类的字符)

    使用的是SQLserver数据库测试,其他数据库类似. 默认排序是按ID进行排序的 select stu_id ,stu_name from student order by stu_id. 现在需要 ...

  6. ElasticSearch文档及分布式文档存储

    1.什么是文档? 文档由索引(_index),类型(_type),唯一标识(_id) 组成,我们为 _index(索引) 分配相关逻辑地址分片,该索引下的数据会根据索引以及类型计算哈希来分配数据存储的 ...

  7. Linux 的文件类型

    Linux 的文件通常分为 7 大类 文件类型                                  缩写      英文名称                                ...

  8. luogu P2742 【模板】二维凸包 / [USACO5.1]圈奶牛Fencing the Cows

    题解: 二维凸包裸题 按照x坐标为第一关键字,y坐标为第二关键字排序 然后相邻判断叉积用单调队列搞过去 正反都做一次就好了 代码: #include <bits/stdc++.h> usi ...

  9. Android 开发随笔

    1 获取屏幕尺寸 WindowManager wm = this.getWindowManager();viewWidth = wm.getDefaultDisplay().getWidth();vi ...

  10. js前端ajax提交list集合参数至后端

    var orderNosList = new Array(); var rows = $("#dg_linkOrder").datagrid("getChecked&qu ...