admin 发表于 2014-7-7 19:45:44

帝国cms搜索表单制作语法说明

帝国cms搜索表单制作语法说明
本文关键字词:帝国搜索,搜索表单,帝国cms搜索,搜索模板

帝国CMS内置强大的搜索功能,用户只需制作搜索表单指向搜索处理页面即可实现相应搜索。本文讲解:搜索表单制作语法。


搜索表单的变量说明

变量名说明例子
搜索表单提交地址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=title
keyboard搜索关键字变量<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分别为商品价格的起始价格与结束价格(price字段,不填为不限)<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排序字段:
可指定搜索结果页面的排序字段名。不指定为按发布时间(newstime)排序。排序字段必须是后台系统模型开启排序项的字段。
<input type="hidden" name="orderby" value="id">
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">




单条件搜索的表单制作范例


一、表单范例1:
1、用Dreamweaver制作好表单:
设计视图:


代码模式下的表单代码:
<table width="320" border="0" cellspacing="1" cellpadding="3">
<form name="searchform" method="post" action="/e/search/index.php">
<tr>
<td>关键字:<input name="keyboard" type="text" size="10"></td>
<td>范围:
<select name="show">
<option value="title">标题</option>
<option value="smalltext">简介</option>
<option value="newstext">内容</option>
<option value="writer">作者</option>
<option value="title,smalltext,newstext,writer">搜索全部</option>
</select></td>
</tr>
<tr>
<td>栏 目:
<select name="classid">
<option value="0">搜索全部</option>
<option value="1">新闻中心</option>
<option value="4">技术文档</option>
<option value="22">下载中心</option>
</select> </td>
<td><input type="submit" name="submit" value="搜索"></td>
</tr>
</form>
</table>
2、最终搜索表单显示效果为下图:



搜索表单多条件并列搜索的语法说明

多字段、多逻辑运算联结符并列搜索
(一)、多字段并列搜索:有“字符串”与“数组”两种传递方式
1、字符串传递为例子:
<input type="hidden" name="hh" value="LK">
<input type="hidden" name="show" value="title,writer">
<input type="hidden" name="keyboard" value="标题,作者">
(说明:上面为模糊查询title字段包含“标题”字符或者writer字段包含“作者”的信息)
2、数组传递为例子:
<input type="hidden" name="hh" value="LK">
<input type="hidden" name="show[]" value="title">
<input type="hidden" name="keyboard[]" value="标题">
<input type="hidden" name="show[]" value="writer">
<input type="hidden" name="keyboard[]" value="作者">
(说明:上面为模糊查询title字段包含“标题”字符或者writer字段包含“作者”的信息)
(二)、多逻辑运算联结符并列搜索
1、字符串传递为例子:
<input type="hidden" name="hh" value="LK,EQ">
<input type="hidden" name="show" value="title,writer">
<input type="hidden" name="keyboard" value="标题,作者">
(说明:上面为模糊查询title字段包含“标题”字符或者writer字段等于“作者”的信息)
2、字符串传递为例子:
<input type="hidden" name="show[]" value="title">
<input type="hidden" name="hh[]" value="LK">
<input type="hidden" name="keyboard[]" value="标题">
<input type="hidden" name="show[]" value="writer">
<input type="hidden" name="hh[]" value="EQ">
<input type="hidden" name="keyboard[]" value="作者">
(说明:上面为模糊查询title字段包含“标题”字符或者writer字段等于“作者”的信息)


多条件并列搜索的表单制作范例


二、表单范例2:实现按标题、作者、录入者与信息ID同时搜索的表单
1、用Dreamweaver制作好表单:
设计视图:


代码模式下的表单代码


上面例子html代:
<form name="searchform" method="post" action="/e/search/index.php">
<table width="550" border="0" align="center" cellpadding="3" cellspacing="1" class="tableborder">
<input type="hidden" name="tbname" value="news">
<input type="hidden" name="tempid" value="1">
<input type="hidden" name="andor" value="and">
<tr class="header">
<td colspan="2">新闻搜索</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="97">标题:</td>
<td width="388">
<input type="hidden" name="show[]" value="title">
<input type="hidden" name="hh[]" value="LK">
<input name="keyboard[]" type="text">
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>作者:</td>
<td>
<input type="hidden" name="show[]" value="writer">
<input type="hidden" name="hh[]" value="LK">
<input name="keyboard[]" type="text">
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>录入者:</td>
<td>
<input type="hidden" name="show[]" value="username">
<input type="hidden" name="hh[]" value="EQ">
<input name="keyboard[]" type="text">
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>信息ID范围:</td>
<td>
<input type="hidden" name="show[]" value="id">
<input type="hidden" name="hh[]" value="BT">
<input name="keyboard[]" type="text">
<font color="#666666">(例:“1 6”表示1到6之间) </font>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>&nbsp;</td>
<td>
<input type="submit" name="Submit" value="马上搜索">
<font color="#666666">(不设置为不限)</font>
</td>
</tr>
</table>
</form>
2、最终搜索表单显示效果为下图:

页: [1]
查看完整版本: 帝国cms搜索表单制作语法说明