日期:2011-08-25  浏览次数:20409 次

帝国CMS提供了比较强大的搜索结果调用,你可以按照帝国cms搜索表单制作语法,制作出满足你需求的大部分搜索功能。如果你在你的数据库中有自定义字段,那么可能需要改一下e/search/index.php对form表单提交的数据处理,可以参考文章最后提供的例子。先来看看搜索表单变量说明:
变量名说明例子搜索表单提交地址POST方式:/e/search/index.php<form name="searchform" method="post" action="/e/search/index.php">GET方式:/e/search/?searchget=1/e/search/?searchget=1&keyboard=帝国&show=titlekeyboard搜索关键字变量<input name="keyboard" type="text">show搜索字段变量(多个字段用","格开。搜索字段必须是后台模型开启搜索的字段)<input type="hidden" name="show" value="title,newstext">classid搜索栏目ID(不设置为不限,多个栏目可用","格开,设置父栏目会搜索所有子栏目)<input type="hidden" name="classid" value="1">ztid搜索专题ID(不设置为不限,多个专题可用","格开)<input type="hidden" name="ztid" value="1">tbname按数据表搜索(需与搜索模板ID结合)<input type="hidden" name="tbname" value="news">tempid所用搜索模板ID(一般跟按表搜索结合使用)<input type="hidden" name="tempid" value="1">starttime与endtime分别为搜索发布起始时间与结束时间的信息(不填为不限.格式:2008-02-27)<input name="starttime" type="text" value="0000-00-00" size="12">
<input name="endtime" type="text" value="0000-00-00" size="12">startprice与endprice分别为商品价格的起始价格与结束价格(不填为不限)<input name="startprice" type="text" value="0" size="6">
<input name="endprice" type="text" value="0" size="6">搜索特殊字段id : 按信息ID搜索
keyboard : 按关键字搜索(可实现按tags列出信息)
userid : 按发布者用户ID搜索
username : 按发布者用户名搜索<input type="hidden" name="show" value="keyboard">member值为0则不限制
值为1则为只搜索会员投稿的信息
值为2则为只搜索管理员增加的信息<input type="hidden" name="member" value="1">orderby排序字段:
0:按发布日期(默认)
1:按ID
2:按评论数
3:按浏览人气
4:按下载数<input type="hidden" name="orderby" value="1">myorder排序方式:
0:倒序排列(默认)
1:顺序排列<input type="hidden" name="myorder" value="1">andor设置多条件查询之间关联关系,有两种:
or : 或者的关系(默认)
and : 并且的关系<input type="hidden" name="andor" value="and">hh逻辑运算联结符变量:
LT : 小于
GT : 大于
EQ : 等于
LE : 小于等于
GE : 大于等于
NE : 不等于
IN : 包含(搜索关键字用空格隔开每个值)
BT : 范围,两个值之间(搜索关键字用空格隔开两个值)
LK : 模糊查询(默认)<input type="hidden" name="hh" value="LK">
下面是一个例子:


<tablewidth="320"border="0"cellspacing="1"cellpadding="3">
<formname="searchform"method="post"action="/e/search/index.php">
<tr>
   <td>关键字:<inputname="keyboard"type="text"size="10"></td>
  <td>范围:
      <selectname="show">
      <optionvalue="title">标题</option>
      <optionvalue="smalltext">简介</option>
      <optionvalue="newstext">内容</option>
      <optionvalue="writer">作者</option>
      <optionvalue="title,smalltext,newstext,writer">搜索全部</option>
       </select></td>
</tr>
<tr>
   <td>栏 目:
      <selectname="classid">
      <optionvalue="0">搜索全部</option>
  &nb