thinkphp实现模糊匹配(学习贵哥代码)
模板文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>资讯管理-{$site.SITE_INFO.name}</title>
<php>
$addCss="";
$addJs="";
$currentNav ='资讯管理 > 资讯列表';
</php>
<include file="Common:intoHead" />
<script type="text/javascript" src="__PUBLIC__/My97DatePicker/WdatePicker.js"></script>
</head>
<body>
<script>
function import_check(){
var f_content = form1.file.value;
var fileext=f_content.substring(f_content.lastIndexOf("."),f_content.length)
fileext=fileext.toLowerCase()
if (fileext!='.xlsx')
{
alert("对不起,导入数据格式必须是xlsx格式文件哦,请您调整格式后重新上传,谢谢 !");
return false;
}
else{ document.getElementById("form1").submit();}
}
</script>
<div class="wrap">
<include file="Common:head" />
<div class="mainBody">
<include file="Common:left" />
<div id="Right">
<div class="Item hr">
<div class="current">资讯列表</div>
</div>
<div align="right" id="excels">
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="__APP__/Lawerinfo/sqlinsert">
<table><tr> <td width="400px;" height="50"> 选择你要导入的数据表:</td>
<td width="82%"><label>
<input name="file" type="file" id="file" size="50" />
</label>
<label>
<input name="button" type="button" class="nnt_submit" id="button" value="导入数据" onclick="import_check();"/><font color="#FF0000">*</font><font color="#009900"><?php echo $_GET[tishi]; ?></font>
</label> <span class="s_s" style="color:#0000FF; cursor:pointer" onclick="$(this).hide(); $('.search').show();$('#excels').hide();">[搜索条件]</span>
</td><td></td></tr></table>
</form></div>
<div style="padding-left:30px; padding-right:30px;">
<form name="frmSearch" method="get" action="{:U('index')}">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="tab search" style="display:none">
<th colspan="2" style="text-align:left; color:#FF0000">此搜索是模糊匹配,输入任意一个条件即可查找!</th>
<tr>
<td style="width:120px; text-align:right">姓名:</td>
<td><input name="name" type="text" class="input" size="40" /> </td>
</tr>
<tr>
<td style="text-align:right">手机号:</td>
<td><input name="mobile" type="text" class="input" size="40" maxlength="11" /> </td>
</tr>
<tr>
<td style="text-align:right">邮箱:</td>
<td><input name="email" type="text" class="input" size="40" /> </td>
</tr>
<tr>
<td style="text-align:right">用户角色:</td>
<td>
<select name="sex" class="input" style="height:30px">
<option value="">无</option>
<option value="男">男</option>
<option value="女">女</option>
</select>
</td>
</tr>
<tr>
<td style="text-align:right">注册时间:</td>
<td>
<input name="st" type="text" class="input" size="26" onFocus="WdatePicker({isShowClear:false,readOnly:true,dateFmt:'yyyy-MM-dd HH:mm:ss'})" />
—
<input name="et" type="text" class="input" size="26" onFocus="WdatePicker({isShowClear:false,readOnly:true,dateFmt:'yyyy-MM-dd HH:mm:ss'})" />
</td>
</tr>
<tr>
<td style="text-align:right"> </td>
<td>
<span style="color:#0000FF; cursor:pointer" onclick="document.frmSearch.submit();">[搜 索]</span>
<span style="color:#0000FF; cursor:pointer" onclick="$('.search').hide(); $('.s_s').show();$('#excels').show();">[关 闭]</span>
</td>
</tr>
</table>
</form>
</div>
<form action="__APP__/Lawerinfo/deletes" method="post">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="tab">
<thead>
<tr>
<td><strong><span id="alls" style="color:#006600; cursor:pointer">√全选</span></strong></td>
<td>执业证号</td>
<td>律师姓名</td>
<td>性别</td>
<td>律师事务所名称</td>
<td>律所地址</td>
<td>首次执业日期</td>
<td>律所电话</td>
<td>律所学历</td>
<td width="150">操作</td>
</tr>
</thead>
<volist name="list" id="vo">
<tr align="center" id="{$vo.id}" class="checks">
<td><input type="checkbox" name="id[]" value="{$vo.id}"/></td>
<td>{$vo.certificate_num}</td>
<td>{$vo.true_name}</td>
<td>{$vo.sex}</td>
<td>{$vo.law_firm_name}</td>
<td>{$vo.law_firm_address}</td>
<td>{$vo.first_date}</td>
<td>{$vo.lawer_phone}</td>
<td>{$vo.lawer_xueli}</td>
<td>[ <a href="__URL__/edit/id/{$vo.id}/tb/1">编辑 </a> ] [ <a link="{:U('Lawerinfo/del/',array('id'=>$vo['id']))}" href="javascript:void(0)" name="{$vo.title}" class="del">删除 </a> ]</td>
</tr>
</volist>
<tr style="text-align:center"><td><input type="submit" onclick="return confirm('确定要删除选中项吗?')" value="删除被选项" id="bt" /></td><td colspan="8">{$page}</td></tr>
</table>
</form>
</div>
</div>
</div>
<div class="clear"></div>
<include file="Common:foot" />
<script src="__PUBLIC__/Js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function(){
$(".del").click(function(){
var delLink=$(this).attr("link");
popup.confirm('你真的打算删除【<b>'+$(this).attr("name")+'</b>】吗?','温馨提示',function(action){
if(action == 'ok'){
top.window.location.href=delLink;
}
});
return false;
});
});
$(function(){
$("#alls").toggle(function(){
$("input:checkbox").attr("checked",true);
$(this).html("X取消全选");
$(this).css("color",'red');
},function(){
$("input:checkbox").attr("checked",false);
$(this).html("√全选");
$(this).css("color",'#006600');
})
});
$(function(){
})
</script>
</body>
</html>
控制器:
public function index() {
//作为搜索条件查找某律师的信息
$where = '1=1';
if(!empty($_GET['name'])) $where .= ' and true_name regexp \'' . trim($_GET['name']) . '\'';
if(!empty($_GET['mobile'])) $where .= ' and law_mobile regexp \'' . trim($_GET['mobile']) . '\'';
if(!empty($_GET['email'])) $where .= ' and email regexp \'' . trim($_GET['email']) . '\'';
if(!empty($_GET['sex'])) $where .= ' and sex regexp \'' . trim($_GET['sex']) . '\'';
if(!empty($_GET['st'])) $where .= ' and first_date >= \'' . substr(str_replace('+', ' ', $_GET['st']),0,4) . '\'';
if(!empty($_GET['et'])) $where .= ' and first_date <= \'' . substr(str_replace('+', ' ', $_GET['et']),0,4) . '\'';
$M = M("Constant");
$count = $M->where($where)->count();
import("ORG.Util.Page"); // 导入分页类
$d = new Page($count,15); //分页
$list=$M->limit($d->firstRow.','.$d->listRows)->select();
$dd=$d->show();
$this->assign('list', D('Lawerinfo')->listMember($d->firstRow, $d->listRows, $where));
$this->assign('page',$dd);
$this->display();
}
模型层:
public function listMember($firstRow = 0, $listRows = 20, $where) {
$M = M('Constant');
$list = $M->where($where)->limit("$firstRow , $listRows")->select();
return $list;
}