对很多使用ThinkPHP框架的人来说,使用自动自带的增删改查基类,在分页的时候要保持结果页面的搜索状态,但是使用thinkphp手册中的方案却无法奏效。
本文实例讲述了ThinkPHP实现ajax仿官网搜索功能的方法。分享给大家供大家参考。
ThinkPHP手册中的解决方法是:
男篮世界杯赔率,具体实现方法如下:
//分页跳转的时候保证查询条件
foreach($map as $key=>$val) {
$Page->parameter .= "$key=".urlencode($val).&;
}
后台代码:
直接粘贴过来不能用,经过调试会发现,当$map不是一个数组的时候,那么变量是拿不到想要的值的,官方的思路是对封装好的搜索条件$map遍历,相对而言,对表单提交过来的数据直接遍历效果更好,于是,上面代码可改为:
复制代码 代码如下:
//分页跳转的时候保证查询条件
foreach($_GET as $key=>$val) {
//echo $key.$val;
$page->parameter .= "$key=".urlencode($val).&;
}
//搜索,如果在1不在0
function search(){
$keyword = $_POST['search'];
$Goods=M('goods');
//这里我做的一个模糊查询到名字或者对应的id,主要目的因为我这个系统是
//商城系统里面用到直接看产品ID
$map['goods_id|goods_name'] =
array('like','%'.$keyword.'%');
// 把查询条件传入查询方法
if($goods=$Goods->where($map)->select())
{
$this->ajaxReturn($goods,'查询成功!',1);
}else{
$this->ajaxReturn($data,"查询失败,数据不存在!",0);
}
}
本文由美洲杯赔率发布于计算机教程,转载请注明出处:男篮世界杯赔率:ThinkPHP实现ajax仿官网搜索功能