织梦精准搜索自定义字段搜索证书查询
发布时间:2021-04-30 | 发布者: 东东工作室 | 浏览次数: 次非常适合想要做证书查询和精准搜索的小伙伴,支持按自定义字段搜索,支持搜索结果页直接用标签调用自定义字段的值,新增文件的方式,不与程序任何文件冲突。
第一种方式
1、普通文章 内容模型 添加你要查询的自定义字段
例如我的是 zs sf xm
2、前台模板搜索框代码
<form method="post" action="/plus/so.php" >
<p id="search_box">
<p>证书编号:<input type="text" name="zs" value="" /></p>
<p>证件号码:<input type="text" name="sf" value="" /></p>
<p>姓 名:<input type="text" name="xm" value="" /></p>
<p class="exp">注:以上三项需全部输入即可查询。</p>
<input type="submit" name="submit" value="开始搜索" />
</p>
</form>
注意name的字段名改成你自己的
3、在 /plus/ 新建一个 so.php 文件
<?php
/*
* 织梦普通文章模型精准搜索自定义字段
* @param string $zs 证书编号
* @param string $sf 证件号码
* @param string $xm 姓名
* @return so.htm
*/
require_once(dirname(__FILE__)."/../include/common.inc.php");
require_once(DEDEINC.'/datalistcp.class.php');
if($zs == '')
{
ShowMsg('证书编号不能为空!','-1');
exit();
}
if($sf == '')
{
ShowMsg('证件号码不能为空!','-1');
exit();
}
if($xm == '')
{
ShowMsg('姓名不能为空!','-1');
exit();
}
$sql = "SELECT arc.*,addf.* FROM `dede_archives` arc LEFT JOIN `dede_addonarticle` addf ON arc.id=addf.aid WHERE arc.arcrank>-1 AND addf.zs = '$zs' AND addf.sf = '$sf' AND addf.xm = '$xm'";
$dlist = new DataListCP();
$dlist->SetTemplate($cfg_basedir . $cfg_templets_dir . "/" . $cfg_df_style. "/so.htm");
$dlist->SetSource($sql);
$dlist->display();
里面的 zs sf xm 每个都有4处,改成你自己的
4、你的模板文件夹里添加1个 so.htm 模板文件
例如 /templets/default/so.htm
<p>
{dede:datalist}
<p>图片:{dede:field.litpic /}</p>
<p>姓名:{dede:field.xm /}</p>
<p>身份:{dede:field.sf /}</p>
<p>编号:{dede:field.zs /}</p>
<p>内容:{dede:field.body /}</p>
{/dede:datalist}
</p>
第二种:文件打包下载(gbk / utf8)
链接: https://pan.baidu.com/s/1vdNGOwGCDqOYhcDnFqUNCA 密码: ffen
第二种:使用说明
1、选择跟你程序对应编码的文件夹,把里面的2个文件夹里的
- /include/arc.zhengshuview.class.php
- /plus/zhengshu.php
这2个文件上传到你网站对应的目录下
2、在前端模板的搜索框代码写法例子如下
<form action="/plus/zhengshu.php" method="get">
<input type="hidden" name="pagesize" value="1">
<input type="hidden" name="channeltype" value="这里填你的模型ID号"/>
<p>
<label>姓 名:</label>
<input type="text" name="title"/>
</p>
<p>
<label>身份证号:</label>
<input type="text" name="shenfenzheng"/>
</p>
<p>
<label>证书编号:</label>
<input type="text" name="bianhao"/>
</p>
<p>
<input type="submit" value="搜索"/>
</p>
</form>
【上面特别说明】
红色的代码必须要的,
pagesize是搜索结果页每页显示几个数据,一般精准搜索都是1个,
channeltype里填你要搜索的模型ID号
绿色的代码是要搜索的字段,系统字段标题(title)和自定义字段(shenfenzheng,bianhao...)都可以
3、搜索结果模板名为:zhengshu.htm
自己建一个放到自己的网站模板目录里
例如我的
<table width="100%" class="table">
<caption>
<h2>查询结果</h2>
</caption>
<thead>
<tr>
<th>
证书编号
</th>
<th>
身份证号
</th>
<th>
姓名
</th>
<th>
证书类型
</th>
<th>
公司名称
</th>
<th>
所属企业
</th>
<th>
所属领域
</th>
<th>
有效期
</th>
<th>
状态
</th>
</tr>
</thead>
{dede:list titlelen='250'}
<tr>
<td>
[field:bianhao/]
</td>
<td>
[field:shenfenzheng/]
</td>
<td>
[field:title/]
</td>
<td>
[field:leixing/]
</td>
<td>
[field:gongsimingcheng/]
</td>
<td>
[field:qiye/]
</td>
<td>
[field:lingyu/]
</td>
<td>
[field:youxiaoqi/]
</td>
<td>
[field:zhuangtai/]
</td>
</tr>
{/dede:list}
<tr>
<td colspan="9">
{dede:pagelist listsize=1 runphp=yes}
@me = (empty(@me) ? "<p style='color:#f00;'>没有相关记录</p>" : "");
{/dede:pagelist}
</td>
</tr>
</table>
转载请标注:东东工作室——织梦精准搜索自定义字段搜索证书查询