用户信息
帖子内容
1 楼
jadelee
注册会员
积分 110
注册 2010-07-11
     
后台模块内搜索如何添加新的字段?
现在后台新增加字段 n_searchkwd,但怎么都搜不到,只能搜索到topic字段,是不是在“模块/common/incfiles/manage.inc.php” 这个文件中修改?

83    if (!base::isEmpty($keyword)) $dal -> setFuzzyLike('topic', $keyword);

哪位大牛帮忙看看,谢谢!


2019-01-09 17:34:15
2 楼
shadoweb
钻石会员
积分 1054
注册 2014-11-27
     
回复: 后台模块内搜索如何添加新的字段?
setFuzzyLike('topic', $keyword);
你要搜索哪个字段,就把topic修改成哪个即可.
2019-01-10 11:00:59 JTBC教程网 https://jtbc.com.cn/ 客服QQ858512104 微信 shadoweb
3 楼
jadelee
注册会员
积分 110
注册 2010-07-11
     
回复: 后台模块内搜索如何添加新的字段?
谢谢影子哥,这个我知道修改,我是想问除了topic字段外还要搜索新加的字段怎么改,就是可以同时搜索topic和searchkwd字段,谢谢。
2019-01-10 12:04:59
4 楼
jetiben
管理人员
积分 8018
注册 2006-06-28
     
回复: 后台模块内搜索如何添加新的字段?
你不如建一个视图,然后就用常规的SQL语句搜索就行了。
2019-01-10 18:02:20 十年磨一剑,还没磨完那就再来十年!
5 楼
shadoweb
钻石会员
积分 1054
注册 2014-11-27
     
回复: 后台模块内搜索如何添加新的字段?
jadelee 发表于 2019-01-10 12:04:59 谢谢影子哥,这个我知道修改,我是想问除了topic字段外还要搜索新加的字段怎么改,就是可以同时搜索topic和searchkwd字段,谢谢。

JT说附加sql可以解决.
测试了一下.这样添加即可.if (!base::isEmpty($keyword)) $dal -> setAdditionalSQL(' and '.$dal -> prefix.'topic like "%'.$keyword.'%" or '.$dal -> prefix.'content like "%'.$keyword.'%"') ;
2019-01-16 11:47:46 JTBC教程网 https://jtbc.com.cn/ 客服QQ858512104 微信 shadoweb
6 楼
jadelee
注册会员
积分 110
注册 2010-07-11
     
回复: 后台模块内搜索如何添加新的字段?
谢谢影子哥,测试了下,这样OK
    if (!base::isEmpty($keyword))
      {
        $dal -> setFuzzyLike('topic', $keyword);
        $dal -> setAdditionalSQL(' or '.$dal -> prefix.'category like "%'.$keyword.'%" or '.$dal -> prefix.'test1 "%'.$keyword.'%" or '.$dal -> prefix.'test2 like "%'.$keyword.'%"');
      }
但有个问题,上面的额外增加的字段中,test1和test2都可以搜的出来,但 category 字段搜不出来,不知这里怎么调用。
本帖由 jadelee 于 2019-01-23 19:36:29 编辑过
2019-01-23 18:20:07
7 楼
shadoweb
钻石会员
积分 1054
注册 2014-11-27
     
回复: 后台模块内搜索如何添加新的字段?
$dal -> setFuzzyLike('topic', $keyword);这句去掉,按我发的格式写,第一个用and 后面的都是or

2019-01-24 13:41:47 JTBC教程网 https://jtbc.com.cn/ 客服QQ858512104 微信 shadoweb
8 楼
jadelee
注册会员
积分 110
注册 2010-07-11
     
回复: 后台模块内搜索如何添加新的字段?
    if (!base::isEmpty($keyword))
      {
        $dal -> setFuzzyLike('topic', $keyword);
        $dal -> setAdditionalSQL(' or '.$dal -> prefix.'category like "%'.$keyword.'%" or '.$dal -> prefix.'test1 "%'.$keyword.'%" or '.$dal -> prefix.'test2 like "%'.$keyword.'%"');
      }

    if (!base::isEmpty($keyword)) $dal -> setAdditionalSQL(' and '.$dal -> prefix.'topic like "%'.$keyword.'%" or '.$dal -> prefix.'category like "%'.$keyword.'%" or '.$dal -> prefix.'test1 "%'.$keyword.'%" or '.$dal -> prefix.'test2 like "%'.$keyword.'%"');
这两个效果是一样的,category 搜索不出来的原因是在数据库里 category对应是数字值,比如搜索数字10是可以搜索到的,但搜10对应的分类名称就搜不到了,原因是这里调用不对,不知道怎么调用?
2019-01-24 22:00:02
9 楼
shadoweb
钻石会员
积分 1054
注册 2014-11-27
     
回复: 后台模块内搜索如何添加新的字段?
分类还有必要搜索吗?
要不你添加个字段,用来存储分类名
这个是最简单的方法
当然通过关键字来搜索分类也可以,不过中间要经过转换ID,比较麻烦一点
2019-01-25 13:45:04 JTBC教程网 https://jtbc.com.cn/ 客服QQ858512104 微信 shadoweb
10 楼
shadoweb
钻石会员
积分 1054
注册 2014-11-27
     
回复: 后台模块内搜索如何添加新的字段?
另外,后台不是可以通过分类来筛选的吗
2019-01-25 13:46:05 JTBC教程网 https://jtbc.com.cn/ 客服QQ858512104 微信 shadoweb