织梦默认的高级搜索,就是这个页面/plus/advancedsearch.PHP,他是模糊搜索.而且会出现多条结果,需要修改为单条信息搜索.
后台,核心,模型管理,在原模型或新建立的模型中,增加字段.比如增加身份证字段.
然后返回模型管理,找到模型后面的放大镜图标,点击一下.如下图.
下面模板选择,默认是利用官方默认模板中的advancedsearch.htm 模板
点击确定后,就会自动出现搜索代码.
还需要修改plus/advancedsearch.php 这个文件.
大约在142行. 如下为修改后的效果.就是把模糊查询为精准查询.并增加一个不为空的判断.
1 2 3 4 5 6 7 8 9 10 | if(isset(${$var}) && trim(${$var})!='') { ${$var} = stripslashes(${$var}); ${$var} = preg_replace("#[/|/"/r/n/t%/*/?/(/)/$;,'%<>]#", "", trim(${$var})); ${$var} = addslashes(${$var}); //$where .= " AND addon.$var LIKE '%${$var}%'"; $where .= " AND addon.$var = '${$var}'"; } else{ ShowMsg('身份证不能为空,或输入不正确',-1,0);exit;} |
向下.
在下面这几行的下面增加.
1 2 3 4 5 | else { $sql = urldecode($sql); $query = $sql; } |
增加如下代码,下面是修改后的效果
1 2 3 4 5 6 7 8 9 10 11 12 | else { $sql = urldecode($sql); $query = $sql; } //print_r($sql);exit; $searchinfo2 = $dsql->GetOne($sql); if(!is_array($searchinfo2)) { showmsg('查询的信息不存在,请检查输入','-1'); exit(); } |
如果模板上不显示自定义字段,可以在网上搜索下解决方案