分类搜索的实现

2016-07-07 16:50 来源:www.chinab4c.com 作者:ecshop专家

在search.app.php中的function index()加入一段判断
  1. $cate_name = trim($_GET['cate_name']);
  2. if (!empty($cate_name))
  3. {
  4. $conditions .= " AND cate_name LIKE '%{$cate_name}%' ";
  5. $filters['cate_name'] = array('key' => 'cate_name', 'name' => LANG::get('cate_name'), 'value' => $cate_name);
  6. }
复制代码
前台搜索参数增加'cate_name',如index.php?act=catgoods&app=search&cate_name=激光耗材


由于时间比较紧,还有按地区检索,以及其他代码来不及发


回答:
值得研究一下..



老师谢谢你了


楼主很强大!!

ecmall 的搜索功能不是很聪明,不知道楼主能不能给改进一下 让他聪明一些

目前已经把搜索功能拓展了很多,效果方面如仿百度ajax下拉,功能拓展方面,有品牌等等
另外已经把商品促销功能拓展上去了,需要修改的文件较多,无法贴出代码,有需要的朋友可以加我QQ:251217408


狼哥, 怎样才能把你给我的那段代码嵌入到ecmall

建议详细标明代码嵌入和修改的位置,方便其他人看.还有很多是初学者.

1、将search.app.php文件中function index()里面的if (!empty($keyword)) {}这段代码注释掉
2、在goods.model.php加入以下代码:
  1. function list_test($key){

  2. $colname_rs = $_GET["keyword"];
  3. $result = explode(" ",$_GET["keyword"]);
  4. $query_rs = "SELECT * FROM (";
  5. for($i=0;$i<count($result);$i++)
  6. {
  7. if($i==0){
  8. $query_rs .= "SELECT * FROM ecm_goods WHERE goods_name LIKE '%$result[$i]%'";
  9. }
  10. else
  11. {
  12. $query_rs .= " UNION SELECT * FROM ecm_goods WHERE goods_name LIKE '%$result[$i]%'";
  13. }
  14. }
  15. $query_rs .= ") T ORDER BY goods_id DESC";
  16. return $this->db->getAll($query_rs);
  17. }
复制代码
3、回到search.app.php,将function index()里面的$this->assign('goods_list', $goods_list);改为:
  1. $list_test = $goods_mod->list_test($key);
  2. if (!empty($key)){
  3. $this->assign('goods_list', $list_test);
  4. }else{
  5. $this->assign('goods_list', $goods_list);
  6. $page['item_count'] = $goods_mod->getCount();
  7. }
复制代码
4由于时间比较紧,分页代码还没弄,呵呵,不过这个可以从文件里复制,我就不贴代码


谢谢楼主的无私奉献!! 强烈支持

你这样说让我们很不明白的啊,有没有图显示或是网站演示啊

浏览该贴http://ecmall.shopex.cn/bbs/view ... p;extra=&page=2

光说是分类搜索,可是到底是个什么样子呢,有没有做好的演示呢,这样真的很难让人理解,只靠一个词语远不比看到现实的演示更有效,不然大家总是在想能达到什么效果。

http://www.wodoa.com/mall/index.php?act=index&app=search