目錄
搜索表单多条件并列搜索语法说明
一个实际例子
首頁 後端開發 php教程 帝国CMS的搜索表单语法规则_PHP教程

帝国CMS的搜索表单语法规则_PHP教程

Jul 13, 2016 am 10:33 AM
帝國cms

帝国CMS提供了比较强大的搜索结果调用,你可以按照帝国cms搜索表单制作语法,制作出满足你需求的大部分搜索功能。如果你在你的数据库中有自定义字段,那么可能需要改一下e/search/index.php对form表单提交的数据处理,可以参考文章最后提供的例子。先来看看搜索表单变量说明:

变量名 说明 例子
搜索表单提交地址 POST方式:/e/search/index.php
GET方式:/e/search/?searchget=1 /e/search/?searchget=1&keyboard=帝国&show=title
keyboard 搜索关键字变量
show 搜索字段变量(多个字段用","格开。搜索字段必须是后台模型开启搜索的字段)
classid 搜索栏目ID(不设置为不限,多个栏目可用","格开,设置父栏目会搜索所有子栏目)
ztid 搜索专题ID(不设置为不限,多个专题可用","格开)
tbname 按数据表搜索(需与搜索模板ID结合)
tempid 所用搜索模板ID(一般跟按表搜索结合使用)
starttime与endtime 分别为搜索发布起始时间与结束时间的信息(不填为不限.格式:2008-02-27)
startprice与endprice 分别为商品价格的起始价格与结束价格(不填为不限)
搜索特殊字段 id : 按信息ID搜索
keyboard : 按关键字搜索(可实现按tags列出信息)
userid : 按发布者用户ID搜索
username : 按发布者用户名搜索
member 值为0则不限制
值为1则为只搜索会员投稿的信息
值为2则为只搜索管理员增加的信息
orderby 排序字段:
0:按发布日期(默认)
1:按ID
2:按评论数
3:按浏览人气
4:按下载数
myorder 排序方式:
0:倒序排列(默认)
1:顺序排列
andor 设置多条件查询之间关联关系,有两种:
or : 或者的关系(默认)
and : 并且的关系
hh 逻辑运算联结符变量:
LT : 小于
GT : 大于
EQ : 等于
LE : 小于等于
GE : 大于等于
NE : 不等于
IN : 包含(搜索关键字用空格隔开每个值)
BT : 范围,两个值之间(搜索关键字用空格隔开两个值)
LK : 模糊查询(默认)

下面是一个例子:

<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>
登入後複製

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

1. 多字段并列搜索:有"字符串"与"数组"两种传递方式

字符串传递为例子:

<input type="hidden" name="hh" value="LK">
<input type="hidden" name="show" value="title,writer">
<input type="hidden" name="keyboard" value="标题,作者">
登入後複製

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

数组传递为例子:

<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字段包含"作者"的信息

2. 多逻辑运算联结符并列搜索

字符串传递为例子:

<input type="hidden" name="hh" value="LK,EQ">
<input type="hidden" name="show" value="title,writer">
<input type="hidden" name="keyboard" value="标题,作者">
登入後複製

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

字符串传递为例子:

<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字段等于"作者"的信息。

一个实际例子

表单设计如下:

						<form action="[!--news.url--]e/search/index.php" method="post" name="searchform" id="searchform">
						<select name="classid" id="" style="display:none">
							<option value="59,60,78,79,80,81" selected>全部</option>
						</select>
						<input type="hidden" name="show" value="title,myarea,mycategory,smalltext" />
						<input type="hidden" name="tempid" value="1" />
						<table width="100%" cellspacing="0" cellpadding="0" border="0">
							<tbody>
								<tr class="even">
									<td style=" text-align:left;">地区:
								<select name="area" id="">
									<option value="">不限</option>
									<option value="香洲">香洲</option>
									<option value="吉大">吉大</option>
									<option value="拱北">拱北</option>
									<option value="新香洲">新香洲</option>
									<option value="前山">前山</option>
									<option value="南屏">南屏</option>
									<option value="金湾">金湾</option>
									<option value="斗门">斗门</option>
								</select>
								
								  房型:
								<select name="category" id="">
									<option value="">不限</option>
									<option value="58_0">一房</option>
									<option value="58_1">二房</option>
									<option value="58_2">三房以上</option>
									<option value="58_3">公寓</option>
									<option value="58_4">写字楼</option>
									<option value="58_5">商铺</option>
									<option value="58_6">厂房</option>
								</select>
									</td>
									<td> </td>
								</tr>
								<tr class="even">
									<td style=" text-align:left;">时间范围: <input name="starttime" type="text" value="2008-08-08" size="12" onclick="calendar.show(this);" /> 到 <input type="text" id="todayButton" name="todayButton" value="" size="12" onclick="calendar.show(this);" /> (不选则不限时段)</td>
									<td> </td>
								</tr>
								<tr class="even">
									<td style=" text-align:left;"><input name="keyboard" type="text" size="32" value="" id="keyboard" class="inputText" />   <input type="submit" name="Submit22" value=" 搜 索 " /></td>
									<td></td>
								</tr>
							</tbody>
						</table>
						</form>
登入後複製

为了可以加入对自定义字段myarea与mycategory的搜索,我们需要对e/search/index.php进行适当改写:

$keyboard=$_POST['keyboard'].','.$_POST['area'].','.$_POST['category'];
// 这是原来的:$keyboard=$_POST['keyboard'];
$keyboardone=0;
if(is_array($keyboard))
{}
elseif(strstr($keyboard,','))
{
	$keyboard=explode(',',$keyboard);
}
else
{
	$keyboard=trim($keyboard);
	$len=strlen($keyboard);
	if($len<$public_r[min_keyboard]||$len>$public_r[max_keyboard])
	{
		printerror("MinKeyboard",$getfrom,1);
	}
	$keyboardone=1;
}
登入後複製

OK,完成。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/752538.htmlTechArticle帝国CMS提供了比较强大的搜索结果调用,你可以按照帝国cms搜索表单制作语法,制作出满足你需求的大部分搜索功能。如果你在你的数据库...
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24
帝國cms手機端設置在哪裡 帝國cms手機端設置在哪裡 Apr 17, 2024 pm 12:12 PM

帝國CMS的手機端設定位於「模板管理」模組的「手機模板」中,具體步驟包括:啟用模板、選擇應用頻道、編輯模板內容,並儲存設定。

帝國cms網站地圖在哪 帝國cms網站地圖在哪 Apr 17, 2024 am 10:48 AM

透過存取config.inc.php檔案並檢查dositemap設置,可以找到帝國CMS網站地圖。如果設定為"on",則網站地圖已啟用。網站地圖路徑位於sitemapurl設定中,可以透過瀏覽器存取或透過FTP下載。

帝國cms模板文件放在哪裡好用 帝國cms模板文件放在哪裡好用 Apr 17, 2024 am 07:22 AM

帝國CMS模板檔案理想的放置位置是/e/template/default/skin/default/,其次還可以放置在/e/data/skins/和/e/skin/,需要注意保持資料夾結構、設定檔案權限以及定期備份。

帝國cms自動發布接口在哪 帝國cms自動發布接口在哪 Apr 17, 2024 am 09:03 AM

帝國CMS的自動發布介面位於/e/api/web/postinfo.php,使用步驟如下:存取/e/api/web/postinfo.php 位址使用HTTP POST 提交文章標題、欄位ID、分類ID、作者和文章內容等資料介面會傳回一個JSON 格式的回應,其中包含發佈結果和文章ID

帝國cms百度主動推送插件在哪 帝國cms百度主動推送插件在哪 Apr 17, 2024 am 11:00 AM

帝國cms百度主動推送插件位於根目錄/e/api/baidu/push.php。具體設定步驟如下:1. 上傳外掛程式至指定路徑。 2. 在帝國cms後台設定「百度主動推送」選項,包括推送位址、API Key和推送間隔。 3. 取得百度推送資訊:推送位址:https://data.zz.baidu.com/urls?site=YOUR_SITE&token=YOUR_API_KEY,API Key:登入百度搜尋資源平台取得。 4. 定期更新API Key,並設定合理的推送間隔。

帝國cms資料庫設定檔在哪裡找 帝國cms資料庫設定檔在哪裡找 Apr 17, 2024 am 06:42 AM

帝國CMS資料庫設定檔位於網站根目錄下e/config/db.inc.php,它包含以下設定資訊:$dbhost:資料庫伺服器位址$dbuser:資料庫使用者名稱$dbpass:資料庫密碼$dbname:資料庫名稱$dbport :資料庫連接埠$dbcharset:資料庫字元集

帝國cms是免費的嗎 帝國cms是免費的嗎 Apr 17, 2024 am 11:24 AM

是的,帝國CMS是一款免費的開源內容管理系統(CMS)。它是一款輕量CMS,功能豐富,易於使用。帝國CMS遵循GNU通用公共授權(GPL),這意味著它可以免費下載、安裝和使用。對於商業用途,它提供了付費版本,提供額外的功能和支持,例如廣告管理、線上支付和高級技術支援。

帝國cms資源網模板在哪 帝國cms資源網模板在哪 Apr 17, 2024 am 10:00 AM

帝國CMS模板下載位置:官方模板下載:https://www.phome.net/template/第三方模板網站:https://www.dedecms.com/diy/https://www.0978.com.cn /https://www.jiaocheng.com/安裝方式:下載模板解壓縮模板上傳模板選擇模板

See all articles