一 、控制器 /* * 搜索 */ public function sou(){ //接值 $name=Input::get('name'); $start=Input::get('start'); $end=Input::get('end'); //拼接搜索条件 $where='1'; //模糊查询 if(!empty($name)){ $where.=" and e_title like '%$name%'"; } //时间段 if(!empty($start)){ if(!empty($end)){ $where.=" and e_time between '$start' and '$end'"; } } //接收当前页码 $page=Input::get('pages'); //echo $page;die; //判断当前页码是否存在 $pages = isset($page) ? $page : 1 ; //echo $pages;die; //计算总条数 $count = DB::table('email')->count(); //设置每一页显示的条数 $pageSize = 3 ; //计算总页数 $pageSum = ceil($count/$pageSize); // echo $pageSum; //计算偏移量 $offset = ($pages - 1)*$pageSize; //echo $offset;die; //计算上一页 下一页 $last = $pages<=1 ? 1 : $pages-1 ; $next = $pages>=$pageSum ? $pageSum : $pages+1 ; //拼接A链接 $str = ''; $str .= "<a href='javascript:void(0);' οnclick='page(1)'>首页</a>"; $str .= "<a href='javascript:void(0);' οnclick='page($last)'>上一页</a>"; $str .= "<a href='javascript:void(0);' οnclick='page($next)'>下一页</a>"; $str .= "<a href='javascript:void(0);' οnclick='page($pageSize)'>尾页</a>"; //查询分页后的数据信息 $results = DB::select("select * from email where $where limit $offset,$pageSize"); //关键字变红 foreach($results as $key=>$val){ $results[$key]->e_title=str_replace($name,"<font color='red'>$name</font>",$val->e_title); } //渲染 return view('sou',['list'=>$results,'page'=>$str,'name'=>$name,'start'=>$start,'end'=>$end]); } 二 、视图层 //分页输出
<?php echo $page?>
//搜索传后台
function sou(page){ // 搜索的值 var na=$("#name").val(); //开始的时间 var sta=$("#start").val(); //结束的时间 var en=$("#end").val(); $.get("{{URL('sou')}}", { pages:page,name:name,start:start,end:end},function(msg){ //替换整个页面 $("#html").html(msg) } ); }