帝国模板之家为广大用户提供专业、一站式建站服务。

帝国cms教程

帝国cms教程栏目,提供精品建站,仿站,二次开发,安装,标签使用等图文教程,帮助建设和管理好你的帝国cms站点。

当前位置:首页 > 教程 > 帝国cms教程 > 正文

帝国cms高级搜索按多栏目搜索 无结果的问题

帝国模板之家 2020-09-22 帝国cms教程 评论

最近在做帝国cms搜索,添加多栏目搜索功能时,发现并没有搜索结果。以下是搜索表单的代码:

 <form action="/e/search/index.php"  method="post"  name="searchform">
        <input type="text" name="keyboard" id="keyboard" placeholder="请输入搜索关键字">
        <input type="hidden" name="show" value="title,smalltext" />
        <input type="hidden" name="tempid" value="1" />
        <input type="hidden" name="classid" value="1,4,7,10,13,16" />
        <button type="submit"></button>
 </form>

这里的栏目1,4,7,10,13,16 是不同模型下的栏目。为什么搜不到结果呢?

调试之后发现在问题在 /e/search/index.php 中

if(empty($tbname)||InfoIsInTable($tbname))
{
    printerror("SearchNotRecord",$getfrom,1);
}

InfoIsInTable 函数中了判断是否是内置表。结果查看配置文件,发现我们添加的表并没有在内置表变量中,我们只需在/e/config/config.php配置文件中加上我们要查询的表即可。代码如下:

$etable_r['news']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>1);
$etable_r['download']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>2);
$etable_r['photo']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>3);
$etable_r['flash']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>4);
$etable_r['movie']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>5);
$etable_r['shop']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>6);
$etable_r['article']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>7);
$etable_r['info']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>8);
$etable_r['game']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>9);
$etable_r['zhuanti']=Array('deftb'=>'1',
'yhid'=>0,
'intb'=>0,
'mid'=>10);
这里的 game和zhuanti 使我们新建的模型。

推荐教程:帝国CMS教程

以上就是帝国cms高级搜索按多栏目搜索 无结果的问题的解决方法,大家赶紧测试一下吧,更多内容请关注帝国模板之家

这世上无忧无虑的人,反而相对寿命会长点。

已有 位小伙伴发表了看法

欢迎 发表评论

  • 匿名发表

关于

帝国cms模板

网页插件

帝国模板之家 | www.moyouyouw.cn

本站所有模板/文章除标明原创外,均来自网络转载,版权归原作者所有,如果有侵犯到您的权益,请联系站长删除,谢谢! 寻找帝国cms模板首选帝国模板之家,用心做站,上线至今广受好评,值得信赖!

  • 交流群1:帝国cms交流群1
  • 交流群2:帝国cms交流群2
在线QQ 给我留言