下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国CMS搜索表单怎么做?

707 2021-02-14 10:07:07

收藏

帝国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制作好表单:

设计视图:
代码模式下的表单代码

<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>
<optionvalue="1">新闻中心</option>
<optionvalue="4">技术文档</option>
<optionvalue="22">下载中心</option>
</select></td>
<td><inputtype="submit"name="submit"value="搜索"></td>
</tr>
</form>
</table>

2、最终搜索表单显示效果为下图:

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

多字段、多逻辑运算联结符并列搜索

(一)、多字段并列搜索:有“字符串”与“数组”两种传递方式

1、字符串传递为例子:

<inputtype="hidden"name="hh"value="LK">
<inputtype="hidden"name="show"value="title,writer">
<inputtype="hidden"name="keyboard"value="标题,作者">

(说明:上面为模糊查询title字段包含“标题”字符或者writer字段包含“作者”的信息)

2、数组传递为例子:

<inputtype="hidden"name="hh"value="LK">
<inputtype="hidden"name="show[]"value="title">
<inputtype="hidden"name="keyboard[]"value="标题">
<inputtype="hidden"name="show[]"value="writer">
<inputtype="hidden"name="keyboard[]"value="作者">

(说明:上面为模糊查询title字段包含“标题”字符或者writer字段包含“作者”的信息)

(二)、多逻辑运算联结符并列搜索

1、字符串传递为例子:

<inputtype="hidden"name="hh"value="LK,EQ">
<inputtype="hidden"name="show"value="title,writer">
<inputtype="hidden"name="keyboard"value="标题,作者">

(说明:上面为模糊查询title字段包含“标题”字符或者writer字段等于“作者”的信息)

2、字符串传递为例子:

<inputtype="hidden"name="show[]"value="title">
<inputtype="hidden"name="hh[]"value="LK">
<inputtype="hidden"name="keyboard[]"value="标题">
<inputtype="hidden"name="show[]"value="writer">
<inputtype="hidden"name="hh[]"value="EQ">
<inputtype="hidden"name="keyboard[]"value="作者">

(说明:上面为模糊查询title字段包含“标题”字符或者writer字段等于“作者”的信息)

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

二、表单范例2:实现按标题、作者、录入者与信息ID同时搜索的表单

1、用Dreamweaver制作好表单:

设计视图:
代码模式下的表单代码
上面例子html代码

<formname="searchform"method="post"action="/e/search/index.php">
<tablewidth="550"border="0"align="center"cellpadding="3"cellspacing="1"class="tableborder">
<inputtype="hidden"name="tbname"value="news">
<inputtype="hidden"name="tempid"value="1">
<inputtype="hidden"name="andor"value="and">
<trclass="header">
<tdcolspan="2">新闻搜索</td>
</tr>
<trbgcolor="#FFFFFF">
<tdwidth="97">标题:</td>
<tdwidth="388">
<inputtype="hidden"name="show[]"value="title">
<inputtype="hidden"name="hh[]"value="LK">
<inputname="keyboard[]"type="text">
</td>
</tr>
<trbgcolor="#FFFFFF">
<td>作者:</td>
<td>
<inputtype="hidden"name="show[]"value="writer">
<inputtype="hidden"name="hh[]"value="LK">
<inputname="keyboard[]"type="text">
</td>
</tr>
<trbgcolor="#FFFFFF">
<td>录入者:</td>
<td>
<inputtype="hidden"name="show[]"value="username">
<inputtype="hidden"name="hh[]"value="EQ">
<inputname="keyboard[]"type="text">
</td>
</tr>
<trbgcolor="#FFFFFF">
<td>信息ID范围:</td>
<td>
<inputtype="hidden"name="show[]"value="id">
<inputtype="hidden"name="hh[]"value="BT">
<inputname="keyboard[]"type="text">
<fontcolor="#666666">(例:“16”表示1到6之间)</font>
</td>
</tr>
<trbgcolor="#FFFFFF">
<td>&nbsp;</td>
<td>
<inputtype="submit"name="Submit"value="马上搜索">
<fontcolor="#666666">(不设置为不限)</font>
</td>
</tr>
</table>
</form>

 

本文地址:https://xzo.com.cn/develop/empire/372.html

有帮助,很赞!

信息来源:精准像素
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国cms怎样去掉选择注册会员类型?
帝国cms怎样去掉选择注册会员类型?

帝国cms会员用户组功能十分强大,用户可以根据情况选择个人会员或企业会员等,...

1 335
帝国CMS新手入门用万能标签还是灵动标签比较快?
帝国CMS新手入门用万能标签还是灵动标签比较快?

帝国CMS有两大标签,其中一个叫万能标签,另一个叫灵动标签,两个标签用法截然不...

1 394
帝国CMS有栏目seo标题吗,在哪里设置?
帝国CMS有栏目seo标题吗,在哪里设置?

很多用惯了织梦CMS的朋友在用帝国以后就会非常困惑,因为织梦CMS他的栏目是有...

1 266
帝国cms网站被攻击了怎么办?
帝国cms网站被攻击了怎么办?

如果对被攻击一无所知,也没有听说过CC、DDoS的概念,那被攻击以后,只能懵逼等到...

1 329
帝国cms显示的发布时间与实际发布时间相差了8小时怎么办?
帝国cms显示的发布时间与实际发布时间相差了8小时怎么办?

有少量客户在使用帝国cms建站时发现一个问题:帝国cms显示的发布时间与真实的...

0 325
帝国cms怎样制作多语言数据包?
帝国cms怎样制作多语言数据包?

许多帝国cms带有多语言版本,如果每个语言都添加一次程序,不仅开发比较麻烦,维...

0 279
帝国cms7.5编辑器的换行符br怎样改为p元素?
帝国cms7.5编辑器的换行符br怎样改为p元素?

帝国cms7.5自带的编辑器ckeditor默认换行符是<br>,在实际应用中经常会出现问...

0 288
帝国cms外部引入百度统计代码防止被刷统计后台广告优化
帝国cms外部引入百度统计代码防止被刷统计后台广告优化

百度统计后台的广告十分猖獗,而百度统计提供的屏蔽规则并不好用,这个时候,我们...

0 372
随机帝国CMS开发教程
帝国CMS会员中心调用我提交的信息反馈列表
帝国CMS会员中心调用我提交的信息反馈列表

帝国CMS有个信息反馈功能,常用来做网站留言反馈,在线预约等。通过本教程可以...

0 667
帝国CMS调用我的评论列表方法
帝国CMS调用我的评论列表方法

通过本代码可以调用我的评论列表,显示评论内容及时间,点击可以进入信息内容页...

8 648
帝国CMS多值字段for循环调用调用方法
帝国CMS多值字段for循环调用调用方法

帝国CMS多值字段for循环调用调用方法基础版、帝国CMS多值字段for循环调用调...

3 736
帝国CMS调用最新会员头像+用户名+链接
帝国CMS调用最新会员头像+用户名+链接

帝国CMS调用最新会员头像+用户名+链接...

8 660
栏目自定义字段ReturnClassAddField标签截取字数方法
栏目自定义字段ReturnClassAddField标签截取字数方法

栏目自定义字段调用标签用ReturnClassAddField,这个截取字段的方法是比较常...

1 742
帝国CMS循环子栏目及子栏目下面的数据
帝国CMS循环子栏目及子栏目下面的数据

循环帝国CMS循环子栏目及子栏目下面的数据方法,看下面这段代码...

3 743
帝国CMS调用当前专题信息
帝国CMS调用当前专题信息

帝国cms专题也算是常用功能之一,如果你还不会用,就跟着教程试试吧 ~ (并非帝国...

0 728
帝国CMS数据库报错Parse error: syntax error, unexpected $end in的修复方法
帝国CMS数据库报错Parse error: syntax error, unexpected $end in的修复方法

近期在修复一些网络上的精品老模板,在升级的时候遇到报错。网上找了一下方法...

7 620
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入