php - 电商网站中的多条件筛选需求
世界只因有你
世界只因有你 2017-05-18 10:46:17
0
3
587

用的thinkphp框架

$search=urldecode(I("search"));
        $this->assign('search',$search);
        if(!empty($_POST)){
        
            //$condition = array();
            $condition['goods_name']=array("like","%$search%");
            //I('brand') ? $condition['brand_id'] = I('brand') : false;
            if(I('brand')){
                $condition['brand_id']=
            }
            //$condition['brand_id'] =80;
            //I('func') ? $condition['func'] = I('func') : false;
            //I('price') ? $condition['shop_price'] = I('price') : false;

            var_dump($condition);

            //$gList = M('Goods')->where($condition)->select();
           
            //echo "<pre>";
            //var_dump($gList);
            //echo "</pre>";
            
            
        }

我这样写的但是 并不能多条件多 多选查询 求大神 讲讲sql怎么写 最好tp的sql写法

世界只因有你
世界只因有你

全部回复(3)
给我你的怀抱

多选框筛选其实我也没做过,但应该可以这样做:
选了哪些品牌,就传ID过去,用‘,’分隔,然后后台做处理,把所有ID搞出来,
再用in语法$where['brand_id'] = array('in',array($id1,$id2,));

小葫芦

我是不会 TP 语法,所以并不能写什么给你。
一个条件下多选,在 sql 来说,就使用 in ,就可以了 in ,就可以了
where brand IN ('a','b') AND fun IN('1','2') where brand IN ('a','b') AND fun IN('1','2')

过去多啦不再A梦

多条件,你好好想想mysql里面多条件是什么 and。那么你用TP的时候,就申明一个$where=array();
$where['name']='test_name',
$where['age']='test_age'.....等等。后面直接 find($where)就可以了
$where['brand_id'] = array('in',array($id1,$id2,)); 还是你TP手册没看全

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板